def test_node_set_snapshot_current(self, mock_conn): xml_fuzzy = factories.fuzzy_string() xml = '''<domainsnapshot> <name>{0}</name> <domain> <cpu mode="host-model" /> </domain> </domainsnapshot>'''.format(xml_fuzzy) snapshot = mock.Mock() snapshot.getXMLDesc.return_value = xml domain = mock.Mock() domain.isActive.return_value = False domain.snapshotCreateXML.return_value = True domain.snapshotCurrent.return_value = snapshot domain.snapshotLookupByName.return_value = snapshot mock_conn.return_value.lookupByUUIDString.return_value = domain node = mock.Mock(uuid='test_node') snapshot_name = factories.fuzzy_string() dd = DevopsDriver() dd.node_set_snapshot_current(node, snapshot_name) domain.snapshotCreateXML.assert_called_with( xml, libvirt.VIR_DOMAIN_SNAPSHOT_CREATE_REDEFINE | libvirt.VIR_DOMAIN_SNAPSHOT_CREATE_CURRENT)
def test_node_set_snapshot_current_host_passthrough(self, mock_conn): xml_fuzzy = factories.fuzzy_string() cpu_model = factories.fuzzy_string() domain_cpu = '''<cpu mode="host-passthrough"> <model>{0}</model> <vendor>Intel</vendor> </cpu>'''.format(cpu_model) domain_xml = '''<domain> {0} </domain>'''.format(domain_cpu) snapshot_cpu = '<cpu mode="host-passthrough" />' snapshot_xml_tmpl = '''<domainsnapshot> <name>{0}</name> <domain> {1} </domain> </domainsnapshot>''' snapshot_xml = snapshot_xml_tmpl.format(xml_fuzzy, snapshot_cpu) snapshot = mock.Mock() snapshot.getXMLDesc.return_value = snapshot_xml domain = mock.Mock() domain.isActive.return_value = False domain.snapshotCreateXML.return_value = True domain.snapshotCurrent.return_value = snapshot domain.snapshotLookupByName.return_value = snapshot domain.XMLDesc.return_value = domain_xml mock_conn.return_value.lookupByUUIDString.return_value = domain snapshot.getDomain.return_value = domain node = mock.Mock(uuid='test_node') snapshot_name = factories.fuzzy_string() dd = DevopsDriver() dd.node_set_snapshot_current(node, snapshot_name) domain.snapshotCreateXML.assert_called_with( snapshot_xml_tmpl.format(xml_fuzzy, domain_cpu), libvirt.VIR_DOMAIN_SNAPSHOT_CREATE_REDEFINE | libvirt.VIR_DOMAIN_SNAPSHOT_CREATE_CURRENT)