text: import pathlib
  import tempfile
  from unittest.mock import patch
  
  import pytest
  
  from markdown_it.cli import parse
  
  
  def test_parse():
      with tempfile.TemporaryDirectory() as tempdir:
          path = pathlib.Path(tempdir).joinpath("test.md")
          path.write_text("a b c")
          assert parse.main([str(path)]) == 0
  
  
  def test_parse_fail():
      with pytest.raises(SystemExit) as exc_info:
          parse.main(["/tmp/nonexistant_path/for_cli_test.md"])
      assert exc_info.value.code == 1
  
  
  def test_print_heading():
      with patch("builtins.print") as patched:
          parse.print_heading()
      patched.assert_called()
  
  
  def test_interactive():
      def mock_input(prompt):
          raise KeyboardInterrupt
  
      with patch("builtins.print") as patched:
          with patch("builtins.input", mock_input):
              parse.interactive()
      patched.assert_called()
  