diff --git a/tests/test_entrypoints.py b/tests/test_entrypoints.py
index 5fd778a..eb463cc 100644
--- a/tests/test_entrypoints.py
+++ b/tests/test_entrypoints.py
@@ -19,11 +19,13 @@
         with self.redirect_output():
             with self.assertRaises(SystemExit) as ep:
                 _m.cfg_check.config_check_entrypoint()
-
+        # empty run should return code 1
         self.assertEqual(
             ep.exception.code,
-            0,
-            "mcp-checker has non-zero exit-code"
+            1,
+            "mcp-checker has unexpected exit code: {}".format(
+                ep.exception.code
+            )
         )
 
     def test_entry_packages(self):
@@ -43,11 +45,11 @@
         with self.redirect_output():
             with self.assertRaises(SystemExit) as ep:
                 _m.cli.packages.entrypoint()
-
+        # empty run should return code 1
         self.assertEqual(
             ep.exception.code,
-            0,
-            "packages has non-zero exit code"
+            1,
+            "packages has unexpected exit code: {}".format(ep.exception.code)
         )
 
     def test_entry_network(self):
@@ -67,11 +69,11 @@
         with self.redirect_output():
             with self.assertRaises(SystemExit) as ep:
                 _m.cli.network.entrypoint()
-
+        # empty run should return code 1
         self.assertEqual(
             ep.exception.code,
-            0,
-            "network has non-zero exit-code"
+            1,
+            "network has unexpected exit code: {}".format(ep.exception.code)
         )
 
     def test_entry_reclass(self):
@@ -91,9 +93,9 @@
         with self.redirect_output():
             with self.assertRaises(SystemExit) as ep:
                 _m.cli.reclass.entrypoint()
-
+        # empty run should return code 1
         self.assertEqual(
             ep.exception.code,
-            0,
-            "reclass has non-zero exit-code"
+            1,
+            "reclass has unexpected exit code: {}".format(ep.exception.code)
         )
