X-Git-Url: https://git.madduck.net/etc/vim.git/blobdiff_plain/8acc22f11480dab297ad31fa80fa63bea15066c6..537ea8df35b1004bdb228b483907fb5dd92e5257:/tests/test_primer.py

diff --git a/tests/test_primer.py b/tests/test_primer.py
index da1465f..a8ad8a7 100644
--- a/tests/test_primer.py
+++ b/tests/test_primer.py
@@ -24,16 +24,16 @@ EXPECTED_ANALYSIS_OUTPUT = """\
 
 68 / 69 succeeded (98.55%) ✅
 1 / 69 FAILED (1.45%) 💩
- - 0 projects Disabled by config
- - 0 projects skipped due to Python Version
+ - 0 projects disabled by config
+ - 0 projects skipped due to Python version
  - 0 skipped due to long checkout
 
-Failed Projects:
+Failed projects:
 
 ## black:
  - Returned 69
  - stdout:
-black didn't work
+Black didn't work
 
 """
 FAKE_PROJECT_CONFIG = {
@@ -67,10 +67,14 @@ def event_loop() -> Iterator[None]:
         loop.close()
 
 
-async def raise_subprocess_error(*args: Any, **kwargs: Any) -> None:
+async def raise_subprocess_error_1(*args: Any, **kwargs: Any) -> None:
     raise CalledProcessError(1, ["unittest", "error"], b"", b"")
 
 
+async def raise_subprocess_error_123(*args: Any, **kwargs: Any) -> None:
+    raise CalledProcessError(123, ["unittest", "error"], b"", b"")
+
+
 async def return_false(*args: Any, **kwargs: Any) -> bool:
     return False
 
@@ -93,20 +97,20 @@ class PrimerLibTests(unittest.TestCase):
                 "success": 68,
                 "wrong_py_ver": 0,
             },
-            {"black": CalledProcessError(69, ["black"], b"black didn't work", b"")},
+            {"black": CalledProcessError(69, ["black"], b"Black didn't work", b"")},
         )
         with capture_stdout(lib.analyze_results, 69, fake_results) as analyze_stdout:
             self.assertEqual(EXPECTED_ANALYSIS_OUTPUT, analyze_stdout)
 
     @event_loop()
     def test_black_run(self) -> None:
-        """Pretend run black to ensure we cater for all scenarios"""
+        """Pretend to run Black to ensure we cater for all scenarios"""
         loop = asyncio.get_event_loop()
         repo_path = Path(gettempdir())
         project_config = deepcopy(FAKE_PROJECT_CONFIG)
         results = lib.Results({"failed": 0, "success": 0}, {})
 
-        # Test a successful black run
+        # Test a successful Black run
         with patch("black_primer.lib._gen_check_output", return_subproccess_output):
             loop.run_until_complete(lib.black_run(repo_path, project_config, results))
         self.assertEqual(1, results.stats["success"])
@@ -123,11 +127,16 @@ class PrimerLibTests(unittest.TestCase):
         # Test a fail based on returning 1 and not expecting formatting changes
         project_config["expect_formatting_changes"] = False
         results = lib.Results({"failed": 0, "success": 0}, {})
-        with patch("black_primer.lib._gen_check_output", raise_subprocess_error):
+        with patch("black_primer.lib._gen_check_output", raise_subprocess_error_1):
             loop.run_until_complete(lib.black_run(repo_path, project_config, results))
         self.assertEqual(1, results.stats["failed"])
         self.assertTrue(results.failed_projects)
 
+        # Test a formatting error based on returning 123
+        with patch("black_primer.lib._gen_check_output", raise_subprocess_error_123):
+            loop.run_until_complete(lib.black_run(repo_path, project_config, results))
+        self.assertEqual(2, results.stats["failed"])
+
     @event_loop()
     def test_gen_check_output(self) -> None:
         loop = asyncio.get_event_loop()