* Refactored tests. * Fixed CI errors, and included misc tests. * Omit mskanji from streaminfo test. * Omit mskanji from no hints test. * Log results of debugging in comments (linked to Magika issue) * Added docs as to when to use misc tests.
36 lines
1.1 KiB
Python
36 lines
1.1 KiB
Python
#!/usr/bin/env python3 -m pytest
|
|
import subprocess
|
|
import pytest
|
|
from markitdown import __version__
|
|
|
|
# This file contains CLI tests that are not directly tested by the FileTestVectors.
|
|
# This includes things like help messages, version numbers, and invalid flags.
|
|
|
|
|
|
def test_version() -> None:
|
|
result = subprocess.run(
|
|
["python", "-m", "markitdown", "--version"], capture_output=True, text=True
|
|
)
|
|
|
|
assert result.returncode == 0, f"CLI exited with error: {result.stderr}"
|
|
assert __version__ in result.stdout, f"Version not found in output: {result.stdout}"
|
|
|
|
|
|
def test_invalid_flag() -> None:
|
|
result = subprocess.run(
|
|
["python", "-m", "markitdown", "--foobar"], capture_output=True, text=True
|
|
)
|
|
|
|
assert result.returncode != 0, f"CLI exited with error: {result.stderr}"
|
|
assert (
|
|
"unrecognized arguments" in result.stderr
|
|
), f"Expected 'unrecognized arguments' to appear in STDERR"
|
|
assert "SYNTAX" in result.stderr, f"Expected 'SYNTAX' to appear in STDERR"
|
|
|
|
|
|
if __name__ == "__main__":
|
|
"""Runs this file's tests from the command line."""
|
|
test_version()
|
|
test_invalid_flag()
|
|
print("All tests passed!")
|