Revision de40437a test/ganeti.rapi.client_unittest.py
b/test/ganeti.rapi.client_unittest.py | ||
---|---|---|
152 | 152 |
self.assertEqual(client._INST_CREATE_REQV1, rlib2._INST_CREATE_REQV1) |
153 | 153 |
self.assertEqual(client._INST_REINSTALL_REQV1, rlib2._INST_REINSTALL_REQV1) |
154 | 154 |
self.assertEqual(client._NODE_MIGRATE_REQV1, rlib2._NODE_MIGRATE_REQV1) |
155 |
self.assertEqual(client._NODE_EVAC_RES1, rlib2._NODE_EVAC_RES1) |
|
155 | 156 |
self.assertEqual(client._INST_NIC_PARAMS, constants.INIC_PARAMS) |
156 | 157 |
self.assertEqual(client.JOB_STATUS_QUEUED, constants.JOB_STATUS_QUEUED) |
157 | 158 |
self.assertEqual(client.JOB_STATUS_WAITLOCK, constants.JOB_STATUS_WAITLOCK) |
... | ... | |
817 | 818 |
self.assertItems(["node-foo"]) |
818 | 819 |
|
819 | 820 |
def testEvacuateNode(self): |
821 |
self.rapi.AddResponse(serializer.DumpJson([rlib2._NODE_EVAC_RES1])) |
|
820 | 822 |
self.rapi.AddResponse("9876") |
821 | 823 |
job_id = self.client.EvacuateNode("node-1", remote_node="node-2") |
822 | 824 |
self.assertEqual(9876, job_id) |
823 | 825 |
self.assertHandler(rlib2.R_2_nodes_name_evacuate) |
824 | 826 |
self.assertItems(["node-1"]) |
825 |
self.assertQuery("remote_node", ["node-2"]) |
|
827 |
self.assertEqual(serializer.LoadJson(self.rapi.GetLastRequestData()), |
|
828 |
{ "remote_node": "node-2", }) |
|
829 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
826 | 830 |
|
831 |
self.rapi.AddResponse(serializer.DumpJson([rlib2._NODE_EVAC_RES1])) |
|
827 | 832 |
self.rapi.AddResponse("8888") |
828 | 833 |
job_id = self.client.EvacuateNode("node-3", iallocator="hail", dry_run=True) |
829 | 834 |
self.assertEqual(8888, job_id) |
830 | 835 |
self.assertItems(["node-3"]) |
831 |
self.assertQuery("iallocator", ["hail"]) |
|
836 |
self.assertEqual(serializer.LoadJson(self.rapi.GetLastRequestData()), |
|
837 |
{ "iallocator": "hail", }) |
|
832 | 838 |
self.assertDryRun() |
833 | 839 |
|
834 | 840 |
self.assertRaises(client.GanetiApiError, |
835 | 841 |
self.client.EvacuateNode, |
836 | 842 |
"node-4", iallocator="hail", remote_node="node-5") |
843 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
844 |
|
|
845 |
def testEvacuateNodeOldResponse(self): |
|
846 |
self.rapi.AddResponse(serializer.DumpJson([])) |
|
847 |
self.assertRaises(client.GanetiApiError, self.client.EvacuateNode, |
|
848 |
"node-4", accept_old=False) |
|
849 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
850 |
|
|
851 |
self.rapi.AddResponse(serializer.DumpJson([])) |
|
852 |
self.assertRaises(client.GanetiApiError, self.client.EvacuateNode, |
|
853 |
"node-4", accept_old=True) |
|
854 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
855 |
|
|
856 |
self.rapi.AddResponse(serializer.DumpJson([])) |
|
857 |
self.assertRaises(client.GanetiApiError, self.client.EvacuateNode, |
|
858 |
"node-4", accept_old=True, primary=True) |
|
859 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
860 |
|
|
861 |
self.rapi.AddResponse(serializer.DumpJson([])) |
|
862 |
self.assertRaises(client.GanetiApiError, self.client.EvacuateNode, |
|
863 |
"node-4", accept_old=True, secondary=False) |
|
864 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
865 |
|
|
866 |
for sec in [True, None]: |
|
867 |
self.rapi.AddResponse(serializer.DumpJson([])) |
|
868 |
self.rapi.AddResponse(serializer.DumpJson([["res", "foo"]])) |
|
869 |
result = self.client.EvacuateNode("node-3", iallocator="hail", |
|
870 |
dry_run=True, accept_old=True, |
|
871 |
primary=False, secondary=sec) |
|
872 |
self.assertEqual(result, [["res", "foo"]]) |
|
873 |
self.assertItems(["node-3"]) |
|
874 |
self.assertQuery("iallocator", ["hail"]) |
|
875 |
self.assertFalse(self.rapi.GetLastRequestData()) |
|
876 |
self.assertDryRun() |
|
877 |
self.assertEqual(self.rapi.CountPending(), 0) |
|
837 | 878 |
|
838 | 879 |
def testMigrateNode(self): |
839 | 880 |
self.rapi.AddResponse(serializer.DumpJson([])) |
Also available in: Unified diff