소스 검색

Add test for when result_handler import fails

Mike Naberezny 10 년 전
부모
커밋
0c905725b6
1개의 변경된 파일20개의 추가작업 그리고 1개의 파일을 삭제
  1. 20 1
      supervisor/tests/test_options.py

+ 20 - 1
supervisor/tests/test_options.py

@@ -1482,7 +1482,7 @@ class ServerOptionsTests(unittest.TestCase):
                 'redirect_stderr=true but this is not allowed because it '
                 'will interfere with the eventlistener protocol')
 
-    def test_event_listener_pool_with_event_results_handler(self):
+    def test_event_listener_pool_with_event_result_handler(self):
         text = lstrip("""\
         [eventlistener:dog]
         events=PROCESS_COMMUNICATION
@@ -1500,6 +1500,25 @@ class ServerOptionsTests(unittest.TestCase):
         gconfig1 = gconfigs[0]
         self.assertEqual(gconfig1.result_handler, dummy_handler)
 
+    def test_event_listener_pool_result_handler_unimportable(self):
+        text = lstrip("""\
+        [eventlistener:cat]
+        events=PROCESS_COMMUNICATION
+        command = /bin/cat
+        result_handler = supervisor.tests.base:nonexistant
+        """)
+        from supervisor.options import UnhosedConfigParser
+        config = UnhosedConfigParser()
+        config.read_string(text)
+        instance = self._makeOne()
+        try:
+            instance.process_groups_from_parser(config)
+            self.fail('nothing raised')
+        except ValueError as exc:
+            self.assertEqual(exc.args[0],
+                'supervisor.tests.base:nonexistant cannot be '
+                'resolved within [eventlistener:cat]')
+
     def test_event_listener_pool_noeventsline(self):
         text = lstrip("""\
         [eventlistener:dog]