for dry_run in [False, True]:
op = self.Parse(data, dry_run)
- self.assert_(isinstance(op, opcodes.OpCreateInstance))
+ self.assert_(isinstance(op, opcodes.OpInstanceCreate))
self.assertEqual(op.mode, mode)
self.assertEqual(op.disk_template, disk_template)
self.assertEqual(op.dry_run, dry_run)
"destination_x509_ca": ("x", "y", "z"),
}
op = self.Parse(name, data)
- self.assert_(isinstance(op, opcodes.OpExportInstance))
+ self.assert_(isinstance(op, opcodes.OpBackupExport))
self.assertEqual(op.instance_name, name)
self.assertEqual(op.mode, constants.EXPORT_MODE_REMOTE)
self.assertEqual(op.shutdown, True)
"shutdown": False,
}
op = self.Parse(name, data)
- self.assert_(isinstance(op, opcodes.OpExportInstance))
+ self.assert_(isinstance(op, opcodes.OpBackupExport))
self.assertEqual(op.instance_name, name)
self.assertEqual(op.mode, constants.EXPORT_MODE_LOCAL)
self.assertEqual(op.remove_instance, False)
"mode": mode,
}
op = self.Parse(name, data)
- self.assert_(isinstance(op, opcodes.OpMigrateInstance))
+ self.assert_(isinstance(op, opcodes.OpInstanceMigrate))
self.assertEqual(op.instance_name, name)
self.assertEqual(op.mode, mode)
self.assertEqual(op.cleanup, cleanup)
name = "instnohZeex0"
op = self.Parse(name, {})
- self.assert_(isinstance(op, opcodes.OpMigrateInstance))
+ self.assert_(isinstance(op, opcodes.OpInstanceMigrate))
self.assertEqual(op.instance_name, name)
self.assertEqual(op.mode, None)
self.assertFalse(op.cleanup)
}
op = self.Parse(name, data)
- self.assert_(isinstance(op, opcodes.OpRenameInstance))
+ self.assert_(isinstance(op, opcodes.OpInstanceRename))
self.assertEqual(op.instance_name, name)
self.assertEqual(op.new_name, new_name)
self.assertEqual(op.ip_check, ip_check)
}
op = self.Parse(name, data)
- self.assert_(isinstance(op, opcodes.OpRenameInstance))
+ self.assert_(isinstance(op, opcodes.OpInstanceRename))
self.assertEqual(op.instance_name, name)
self.assertEqual(op.new_name, new_name)
self.assert_(op.ip_check)
self.assert_(op.name_check)
+class TestParseModifyInstanceRequest(testutils.GanetiTestCase):
+ def setUp(self):
+ testutils.GanetiTestCase.setUp(self)
+
+ self.Parse = rlib2._ParseModifyInstanceRequest
+
+ def test(self):
+ name = "instush8gah"
+
+ test_disks = [
+ [],
+ [(1, { constants.IDISK_MODE: constants.DISK_RDWR, })],
+ ]
+
+ for osparams in [{}, { "some": "value", "other": "Hello World", }]:
+ for hvparams in [{}, { constants.HV_KERNEL_PATH: "/some/kernel", }]:
+ for beparams in [{}, { constants.BE_MEMORY: 128, }]:
+ for force in [False, True]:
+ for nics in [[], [(0, { constants.INIC_IP: "192.0.2.1", })]]:
+ for disks in test_disks:
+ for disk_template in constants.DISK_TEMPLATES:
+ data = {
+ "osparams": osparams,
+ "hvparams": hvparams,
+ "beparams": beparams,
+ "nics": nics,
+ "disks": disks,
+ "force": force,
+ "disk_template": disk_template,
+ }
+
+ op = self.Parse(name, data)
+ self.assert_(isinstance(op, opcodes.OpInstanceSetParams))
+ self.assertEqual(op.instance_name, name)
+ self.assertEqual(op.hvparams, hvparams)
+ self.assertEqual(op.beparams, beparams)
+ self.assertEqual(op.osparams, osparams)
+ self.assertEqual(op.force, force)
+ self.assertEqual(op.nics, nics)
+ self.assertEqual(op.disks, disks)
+ self.assertEqual(op.disk_template, disk_template)
+ self.assert_(op.remote_node is None)
+ self.assert_(op.os_name is None)
+ self.assertFalse(op.force_variant)
+
+ def testDefaults(self):
+ name = "instir8aish31"
+
+ op = self.Parse(name, {})
+ self.assert_(isinstance(op, opcodes.OpInstanceSetParams))
+ self.assertEqual(op.instance_name, name)
+ self.assertEqual(op.hvparams, {})
+ self.assertEqual(op.beparams, {})
+ self.assertEqual(op.osparams, {})
+ self.assertFalse(op.force)
+ self.assertEqual(op.nics, [])
+ self.assertEqual(op.disks, [])
+ self.assert_(op.disk_template is None)
+ self.assert_(op.remote_node is None)
+ self.assert_(op.os_name is None)
+ self.assertFalse(op.force_variant)
+
+
+class TestParseInstanceReinstallRequest(testutils.GanetiTestCase):
+ def setUp(self):
+ testutils.GanetiTestCase.setUp(self)
+
+ self.Parse = rlib2._ParseInstanceReinstallRequest
+
+ def _Check(self, ops, name):
+ expcls = [
+ opcodes.OpInstanceShutdown,
+ opcodes.OpInstanceReinstall,
+ opcodes.OpInstanceStartup,
+ ]
+
+ self.assert_(compat.all(isinstance(op, exp)
+ for op, exp in zip(ops, expcls)))
+ self.assert_(compat.all(op.instance_name == name for op in ops))
+
+ def test(self):
+ name = "shoo0tihohma"
+
+ ops = self.Parse(name, {"os": "sys1", "start": True,})
+ self.assertEqual(len(ops), 3)
+ self._Check(ops, name)
+ self.assertEqual(ops[1].os_type, "sys1")
+ self.assertFalse(ops[1].osparams)
+
+ ops = self.Parse(name, {"os": "sys2", "start": False,})
+ self.assertEqual(len(ops), 2)
+ self._Check(ops, name)
+ self.assertEqual(ops[1].os_type, "sys2")
+
+ osparams = {
+ "reformat": "1",
+ }
+ ops = self.Parse(name, {"os": "sys4035", "start": True,
+ "osparams": osparams,})
+ self.assertEqual(len(ops), 3)
+ self._Check(ops, name)
+ self.assertEqual(ops[1].os_type, "sys4035")
+ self.assertEqual(ops[1].osparams, osparams)
+
+ def testDefaults(self):
+ name = "noolee0g"
+
+ ops = self.Parse(name, {"os": "linux1"})
+ self.assertEqual(len(ops), 3)
+ self._Check(ops, name)
+ self.assertEqual(ops[1].os_type, "linux1")
+ self.assertFalse(ops[1].osparams)
+
+
+class TestParseRenameGroupRequest(testutils.GanetiTestCase):
+ def setUp(self):
+ testutils.GanetiTestCase.setUp(self)
+
+ self.Parse = rlib2._ParseRenameGroupRequest
+
+ def test(self):
+ name = "instij0eeph7"
+ data = {
+ "new_name": "ua0aiyoo",
+ }
+
+ op = self.Parse(name, data, False)
+
+ self.assert_(isinstance(op, opcodes.OpGroupRename))
+ self.assertEqual(op.old_name, name)
+ self.assertEqual(op.new_name, "ua0aiyoo")
+ self.assertFalse(op.dry_run)
+
+ def testDryRun(self):
+ name = "instij0eeph7"
+ data = {
+ "new_name": "ua0aiyoo",
+ }
+
+ op = self.Parse(name, data, True)
+
+ self.assert_(isinstance(op, opcodes.OpGroupRename))
+ self.assertEqual(op.old_name, name)
+ self.assertEqual(op.new_name, "ua0aiyoo")
+ self.assert_(op.dry_run)
+
+
if __name__ == '__main__':
testutils.GanetiTestProgram()