class MetadataTestsMakeRequest(unittest.TestCase): def setUp(self): self.metadata = MetadataManager() self.url = '/'.join([ API_PRIVATE_ENDPOINT_REST.rstrip('/'), 'SoftLayer_Resource_Metadata', 'something.json']) @patch('SoftLayer.managers.metadata.make_rest_api_call') def test_basic(self, make_api_call): r = self.metadata.make_request('something.json') make_api_call.assert_called_with( 'GET', self.url, timeout=5, http_headers={'User-Agent': USER_AGENT}) self.assertEqual(make_api_call(), r) @patch('SoftLayer.managers.metadata.make_rest_api_call') def test_raise_error(self, make_api_call): make_api_call.side_effect = SoftLayerAPIError( 'faultCode', 'faultString') self.assertRaises( SoftLayerAPIError, self.metadata.make_request, 'something.json') @patch('SoftLayer.managers.metadata.make_rest_api_call') def test_raise_404_error(self, make_api_call): make_api_call.side_effect = SoftLayerAPIError(404, 'faultString') r = self.metadata.make_request('something.json') self.assertEqual(r, None)
def _execute(self, args): meta = MetadataManager() if args['<public>']: t = KeyValueTable(['Name', 'Value']) t.align['Name'] = 'r' t.align['Value'] = 'l' network = meta.public_network() t.add_row([ 'mac addresses', listing(network['mac_addresses'], separator=',')]) t.add_row([ 'router', network['router']]) t.add_row([ 'vlans', listing(network['vlans'], separator=',')]) t.add_row([ 'vlan ids', listing(network['vlan_ids'], separator=',')]) return t if args['<private>']: t = KeyValueTable(['Name', 'Value']) t.align['Name'] = 'r' t.align['Value'] = 'l' network = meta.private_network() t.add_row([ 'mac addresses', listing(network['mac_addresses'], separator=',')]) t.add_row([ 'router', network['router']]) t.add_row([ 'vlans', listing(network['vlans'], separator=',')]) t.add_row([ 'vlan ids', listing(network['vlan_ids'], separator=',')]) return t
class MetadataTests(unittest.TestCase): def setUp(self): self.metadata = MetadataManager() self.make_request = MagicMock() self.metadata.make_request = self.make_request def test_no_param(self): self.make_request.return_value = 'dal01' r = self.metadata.get('datacenter') self.make_request.assert_called_with("Datacenter.json") self.assertEqual('dal01', r) def test_w_param(self): self.make_request.return_value = [123] r = self.metadata.get('vlans', '1:2:3:4:5') self.make_request.assert_called_with("Vlans/1:2:3:4:5.json") self.assertEqual([123], r) def test_user_data(self): self.make_request.return_value = 'user_data' r = self.metadata.get('user_data') self.make_request.assert_called_with("UserMetadata.txt") self.assertEqual('user_data', r) def test_return_none(self): self.make_request.return_value = None r = self.metadata.get('datacenter') self.make_request.assert_called_with("Datacenter.json") self.assertEqual(None, r) def test_w_param_error(self): self.assertRaises(SoftLayerError, self.metadata.get, 'vlans') def test_not_exists(self): self.assertRaises(SoftLayerError, self.metadata.get, 'something') def test_networks_not_exist(self): self.make_request.return_value = [] r = self.metadata.public_network() self.assertEqual({'mac_addresses': []}, r) def test_networks(self): resp = ['list', 'of', 'stuff'] self.make_request.return_value = resp r = self.metadata.public_network() self.assertEqual({ 'vlan_ids': resp, 'router': resp, 'vlans': resp, 'mac_addresses': resp }, r) r = self.metadata.private_network() self.assertEqual({ 'vlan_ids': resp, 'router': resp, 'vlans': resp, 'mac_addresses': resp }, r)
def setUp(self): self.metadata = MetadataManager() self.url = '/'.join([ API_PRIVATE_ENDPOINT_REST.rstrip('/'), 'SoftLayer_Resource_Metadata', 'something.json'])
def setUp(self): self.metadata = MetadataManager() self.make_request = MagicMock() self.metadata.make_request = self.make_request