def test_merge_fingerprint(self): """Test merging a vcenter and network fingerprint.""" nfingerprint = self._create_network_fingerprint() vfingerprint = self._create_vcenter_fingerprint() self.assertIsNone(nfingerprint.get('vm_state')) self.assertIsNone(nfingerprint.get('vm_uuid')) self.assertIsNone(nfingerprint.get('vm_dns_name')) self.assertIsNone(nfingerprint.get('vm_host_socket_count')) self.assertIsNone(nfingerprint.get('vm_datacenter')) self.assertIsNone(nfingerprint.get('vm_cluster')) self.assertIsNone(vfingerprint.get('os_name')) self.assertIsNone(vfingerprint.get('os_version')) self.assertIsNone(vfingerprint.get('bios_uuid')) self.assertIsNone(vfingerprint.get('subscription_manager_id')) self.assertIsNone(vfingerprint.get('cpu_socket_count')) self.assertIsNone(vfingerprint.get('cpu_core_count')) new_fingerprint = _merge_fingerprint(nfingerprint, vfingerprint) self.assertIsNotNone(new_fingerprint.get('vm_state')) self.assertIsNotNone(new_fingerprint.get('vm_uuid')) self.assertIsNotNone(new_fingerprint.get('vm_dns_name')) self.assertIsNotNone(new_fingerprint.get('vm_host_socket_count')) self.assertIsNotNone(new_fingerprint.get('vm_datacenter')) self.assertIsNotNone(new_fingerprint.get('vm_cluster')) self.assertIsNotNone(new_fingerprint.get('name')) self.assertIsNotNone(new_fingerprint.get('os_name')) self.assertIsNotNone(new_fingerprint.get('os_version')) self.assertIsNotNone(new_fingerprint.get('bios_uuid')) self.assertIsNotNone(new_fingerprint.get('subscription_manager_id')) self.assertIsNotNone(new_fingerprint.get('cpu_socket_count')) self.assertIsNotNone(new_fingerprint.get('cpu_core_count'))
def test_merge_fingerprint_network_win(self): """Test merge of fingerprint prioritizes network values.""" nfingerprint = self._create_network_fingerprint() vfingerprint = self._create_vcenter_fingerprint() nfingerprint['os_release'] = 'Fedora' self.assertNotEqual(vfingerprint.get('os_release'), nfingerprint['os_release']) new_fingerprint = _merge_fingerprint(nfingerprint, vfingerprint) self.assertEqual(new_fingerprint.get('os_release'), nfingerprint['os_release'])