Merge branch 'devel-2.1'
[ganeti-local] / test / ganeti.hooks_unittest.py
index 5f820c0..594c321 100755 (executable)
@@ -39,11 +39,15 @@ from ganeti.constants import HKR_SUCCESS, HKR_FAIL, HKR_SKIP
 
 from mocks import FakeConfig, FakeProc, FakeContext
 
+import testutils
+
+
 class FakeLU(cmdlib.LogicalUnit):
   HPATH = "test"
   def BuildHooksEnv(self):
     return {}, ["localhost"], ["localhost"]
 
+
 class TestHooksRunner(unittest.TestCase):
   """Testing case for HooksRunner"""
   def setUp(self):
@@ -75,8 +79,7 @@ class TestHooksRunner(unittest.TestCase):
   def testEmpty(self):
     """Test no hooks"""
     for phase in (constants.HOOKS_PHASE_PRE, constants.HOOKS_PHASE_POST):
-      self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, []))
+      self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}), [])
 
   def testSkipNonExec(self):
     """Test skip non-exec file"""
@@ -86,7 +89,7 @@ class TestHooksRunner(unittest.TestCase):
       f.close()
       self.torm.append((fname, False))
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, [(self._rname(fname), HKR_SKIP, "")]))
+                           [(self._rname(fname), HKR_SKIP, "")])
 
   def testSkipInvalidName(self):
     """Test skip script with invalid name"""
@@ -98,7 +101,7 @@ class TestHooksRunner(unittest.TestCase):
       os.chmod(fname, 0700)
       self.torm.append((fname, False))
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, [(self._rname(fname), HKR_SKIP, "")]))
+                           [(self._rname(fname), HKR_SKIP, "")])
 
   def testSkipDir(self):
     """Test skip directory"""
@@ -107,7 +110,7 @@ class TestHooksRunner(unittest.TestCase):
       os.mkdir(fname)
       self.torm.append((fname, True))
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, [(self._rname(fname), HKR_SKIP, "")]))
+                           [(self._rname(fname), HKR_SKIP, "")])
 
   def testSuccess(self):
     """Test success execution"""
@@ -119,7 +122,7 @@ class TestHooksRunner(unittest.TestCase):
       self.torm.append((fname, False))
       os.chmod(fname, 0700)
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, [(self._rname(fname), HKR_SUCCESS, "")]))
+                           [(self._rname(fname), HKR_SUCCESS, "")])
 
   def testSymlink(self):
     """Test running a symlink"""
@@ -128,7 +131,7 @@ class TestHooksRunner(unittest.TestCase):
       os.symlink("/bin/true", fname)
       self.torm.append((fname, False))
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, [(self._rname(fname), HKR_SUCCESS, "")]))
+                           [(self._rname(fname), HKR_SUCCESS, "")])
 
   def testFail(self):
     """Test success execution"""
@@ -140,7 +143,7 @@ class TestHooksRunner(unittest.TestCase):
       self.torm.append((fname, False))
       os.chmod(fname, 0700)
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, [(self._rname(fname), HKR_FAIL, "")]))
+                           [(self._rname(fname), HKR_FAIL, "")])
 
   def testCombined(self):
     """Test success, failure and skip all in one test"""
@@ -157,8 +160,7 @@ class TestHooksRunner(unittest.TestCase):
         self.torm.append((fname, False))
         os.chmod(fname, 0700)
         expect.append((self._rname(fname), rs, ""))
-      self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, expect))
+      self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}), expect)
 
   def testOrdering(self):
     for phase in (constants.HOOKS_PHASE_PRE, constants.HOOKS_PHASE_POST):
@@ -174,8 +176,7 @@ class TestHooksRunner(unittest.TestCase):
         self.torm.append((fname, False))
         expect.append((self._rname(fname), HKR_SUCCESS, ""))
       expect.sort()
-      self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}),
-                           (True, expect))
+      self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, {}), expect)
 
   def testEnv(self):
     """Test environment execution"""
@@ -187,8 +188,7 @@ class TestHooksRunner(unittest.TestCase):
       env_snt = {"PHASE": phase}
       env_exp = "PHASE=%s" % phase
       self.failUnlessEqual(self.hr.RunHooks(self.hpath, phase, env_snt),
-                           (True, [(self._rname(fname), HKR_SUCCESS,
-                                    env_exp)]))
+                           [(self._rname(fname), HKR_SUCCESS, env_exp)])
 
 
 class TestHooksMaster(unittest.TestCase):
@@ -244,14 +244,14 @@ class TestHooksMaster(unittest.TestCase):
 
   def testTotalFalse(self):
     """Test complete rpc failure"""
-    hm = mcpu.HooksMaster(self._call_false, FakeProc(), self.lu)
+    hm = mcpu.HooksMaster(self._call_false, self.lu)
     self.failUnlessRaises(errors.HooksFailure,
                           hm.RunPhase, constants.HOOKS_PHASE_PRE)
     hm.RunPhase(constants.HOOKS_PHASE_POST)
 
   def testIndividualFalse(self):
     """Test individual node failure"""
-    hm = mcpu.HooksMaster(self._call_nodes_false, FakeProc(), self.lu)
+    hm = mcpu.HooksMaster(self._call_nodes_false, self.lu)
     hm.RunPhase(constants.HOOKS_PHASE_PRE)
     #self.failUnlessRaises(errors.HooksFailure,
     #                      hm.RunPhase, constants.HOOKS_PHASE_PRE)
@@ -259,16 +259,17 @@ class TestHooksMaster(unittest.TestCase):
 
   def testScriptFalse(self):
     """Test individual rpc failure"""
-    hm = mcpu.HooksMaster(self._call_script_fail, FakeProc(), self.lu)
+    hm = mcpu.HooksMaster(self._call_script_fail, self.lu)
     self.failUnlessRaises(errors.HooksAbort,
                           hm.RunPhase, constants.HOOKS_PHASE_PRE)
     hm.RunPhase(constants.HOOKS_PHASE_POST)
 
   def testScriptSucceed(self):
     """Test individual rpc failure"""
-    hm = mcpu.HooksMaster(self._call_script_succeed, FakeProc(), self.lu)
+    hm = mcpu.HooksMaster(self._call_script_succeed, self.lu)
     for phase in (constants.HOOKS_PHASE_PRE, constants.HOOKS_PHASE_POST):
       hm.RunPhase(phase)
 
+
 if __name__ == '__main__':
-  unittest.main()
+  testutils.GanetiTestProgram()