This patch adds further tests for the functionality of LUNodeAdd. This is not yet finished and just RFC.
Signed-off-by: Sebastian Gebhard <[email protected]> --- test/py/cmdlib/node_unittest.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/test/py/cmdlib/node_unittest.py b/test/py/cmdlib/node_unittest.py index 0af499b..cb4a8ed 100644 --- a/test/py/cmdlib/node_unittest.py +++ b/test/py/cmdlib/node_unittest.py @@ -98,5 +98,34 @@ class TestLUNodeAdd(CmdlibTestCase): op = self.CopyOpCode(self.op) self.ExecOpCode(op) + def testReaddingMaster(self): + op = opcodes.OpNodeAdd(node_name=self.cfg.GetMasterNodeName(), + readd=True) + self.ExecOpCodeExpectOpPrereqError(op, "Cannot readd the master node") + + def testReaddAndPassNodeGroup(self): + node1 = self.cfg.AddNewNode() + group1 = self.cfg.AddNewNodeGroup() + op = opcodes.OpNodeAdd(node_name=node1.name,readd=True,group=group1.name) + self.ExecOpCodeExpectOpPrereqError(op, "Cannot pass a node group when a node is being readded") + + def testPrimaryIPv6(self): + #ToDo: Remove master second IP for this test + op = self.CopyOpCode(self.op, primary_ip="2001:DB8::1/64", secondary_ip=None) + #self.ExecOpCode(op) + + def testInvalidSecondaryIP(self): + #ToDo: Something is wrong here. + op = self.CopyOpCode(self.op, secondary_ip="333.444.555.777") + self.ExecOpCode(op) +# self.ExecOpCodeExpectOpPrereqError(op, "Secondary IP (%s) needs to be a valid IPv4" + # " address" % op.secondary_ip) + + def testNodeAlreadyInCluster(self): + node2 = self.cfg.AddNewNode() + op = opcodes.OpNodeAdd(node_name=node2.name) + self.ExecOpCodeExpectOpPrereqError(op, "Node %s is already in the configuration" % + node2.name) + if __name__ == "__main__": testutils.GanetiTestProgram() -- 1.8.1.2
