def test_is_attached_to_network(self): smart_machine_test_data = {'uuid': 'test', 'nics': [{'network_uuid': 'foo'}, {'network_uuid': 'bar'}]} smart_machine = SmartMachine(datacenter=MagicMock(), data=smart_machine_test_data) smart_machine.refresh = MagicMock() self.assertTrue(smart_machine.is_attached_to_network('foo')) self.assertTrue(smart_machine.is_attached_to_network('bar')) self.assertFalse(smart_machine.is_attached_to_network('foobar'))
def test_refresh(self): smart_machine_test_data = {'uuid': 'test', 'foo': 'bar'} smart_machine = SmartMachine(datacenter=MagicMock(), data=smart_machine_test_data) smart_machine.dc.request = MagicMock() smart_machine.dc.request.return_value = ({'foo': 'not-bar'}, None) smart_machine.refresh() self.assertEqual(getattr(smart_machine, 'foo'), 'not-bar') self.assertEqual(smart_machine.dc.request.call_count, 1)
def test_update_metadata(self): old = {'foo': 'bar'} new = {'foo2': 'bar2'} smart_machine_test_data = {'uuid': 'test', 'customer_metadata': old, 'internal_metadata': old, 'tags': old} smart_machine = SmartMachine(datacenter=MagicMock(), data=smart_machine_test_data) smart_machine.dc.request = MagicMock() smart_machine.dc.request.return_value = ({'vm_uuid': 'test'}, None) smart_machine.update_metadata(field='customer_metadata', data=new) smart_machine.dc.request.assert_called_once_with('PUT', 'vmapi', '/vms/%s/customer_metadata' % smart_machine.uuid, data=new) smart_machine.dc.request.reset_mock() smart_machine.update_metadata(field='internal_metadata', data=new) smart_machine.dc.request.assert_called_once_with('PUT', 'vmapi', '/vms/%s/internal_metadata' % smart_machine.uuid, data=new) smart_machine.dc.request.reset_mock() smart_machine.update_metadata(field='tags', data=new) smart_machine.dc.request.assert_called_once_with('PUT', 'vmapi', '/vms/%s/tags' % smart_machine.uuid, data=new) smart_machine.dc.request.reset_mock()
def test_update_specific_metadata(self): old = {'foo': 'bar'} new = {'foo2': 'bar2'} smart_machine_test_data = {'uuid': 'test', 'customer_metadata': old, 'internal_metadata': old, 'tags': old} smart_machine = SmartMachine(datacenter=MagicMock(), data=smart_machine_test_data) smart_machine.update_metadata = MagicMock() smart_machine.update_customer_metadata(data=new) smart_machine.update_metadata.assert_called_with(field='customer_metadata', data=new) smart_machine.update_internal_metadata(data=new) smart_machine.update_metadata.assert_called_with(field='internal_metadata', data=new) smart_machine.update_tags(data=new) smart_machine.update_metadata.assert_called_with(field='tags', data=new)