[Supervisor-checkins] r833 - superlance/trunk/superlance

Tres Seaver tseaver at palladion.com
Wed Feb 11 14:11:32 EST 2009


Author: Tres Seaver <tseaver at palladion.com>
Date: Wed Feb 11 14:11:32 2009
New Revision: 833

Log:
Add test for eager + running + bad status.

Modified:
   superlance/trunk/superlance/tests.py

Modified: superlance/trunk/superlance/tests.py
==============================================================================
--- superlance/trunk/superlance/tests.py	(original)
+++ superlance/trunk/superlance/tests.py	Wed Feb 11 14:11:32 2009
@@ -204,6 +204,26 @@
         self.assertEqual(len(lines), 0, lines)
         self.failIf('mailed' in prog.__dict__)
 
+    def test_runforever_not_eager_running(self):
+        programs = ['foo', 'bar']
+        any = None
+        prog = self._makeOnePopulated(programs, any, exc=True, eager=False)
+        prog.stdin.write('eventname:TICK len:0\n')
+        prog.stdin.seek(0)
+        prog.runforever(test=True)
+        lines = filter(None, prog.stderr.getvalue().split('\n'))
+        self.assertEqual(lines[0],
+                         ("Restarting selected processes ['foo', 'bar']")
+                         )
+        self.assertEqual(lines[1], 'foo is in RUNNING state, restarting')
+        self.assertEqual(lines[2], 'foo restarted')
+        self.assertEqual(lines[3], 'bar not in RUNNING state, NOT restarting')
+        mailed = prog.mailed.split('\n')
+        self.assertEqual(len(mailed), 10)
+        self.assertEqual(mailed[0], 'To: chrism at plope.com')
+        self.assertEqual(mailed[1],
+                    'Subject: httpok for http://foo/bar: bad status returned')
+
 class CrashMailTests(unittest.TestCase):
     def _getTargetClass(self):
         from superlance.crashmail import CrashMail


More information about the Supervisor-checkins mailing list