test_cli.py 763 B

123456789101112131415161718192021222324
  1. """VendorGuard 命令行入口测试。"""
  2. from __future__ import annotations
  3. import unittest
  4. from vendor_guard.cli import _build_utf8_reexec_command, _should_reexec_utf8
  5. class CliTests(unittest.TestCase):
  6. def test_windows_without_utf8_mode_requires_reexec(self) -> None:
  7. self.assertTrue(_should_reexec_utf8("nt", 0))
  8. self.assertFalse(_should_reexec_utf8("nt", 1))
  9. self.assertFalse(_should_reexec_utf8("posix", 0))
  10. def test_reexec_command_enables_utf8_and_preserves_arguments(self) -> None:
  11. command = _build_utf8_reexec_command(["ACME"])
  12. self.assertEqual(command[1:5], ["-X", "utf8", "-m", "vendor_guard.cli"])
  13. self.assertEqual(command[5:], ["ACME"])
  14. if __name__ == "__main__":
  15. unittest.main()