def test_data_spec_port(self): """Test method port of DataSpec""" port = open_json('tests/json/data_spec/port.json') data = DataSpec().port(port, 1) expected = { 'from': 'vip/napi_1', 'to': 'pool/napi_1', 'id': '1', 'name': '8080:Default VIP', 'provider': 'napi', 'properties': { 'l4_protocol': 'TCP', 'l7_protocol': 'HTTP', 'l7_rule': 'Default VIP', 'port': 8080 }, 'properties_metadata': { 'l4_protocol': { 'description': 'L4 Protocol' }, 'l7_protocol': { 'description': 'L7 Protocol' }, 'l7_rule': { 'description': 'L7 Rule' }, 'port': { 'description': 'Port' } } } self.assertDictEqual(data, expected)
def test_data_spec_comp_unit(self): """Test method comp_unit of DataSpec""" comp_unit = open_json('tests/json/data_spec/comp_unit.json') data = DataSpec().comp_unit(comp_unit) expected = { 'id': 'eqpt1', 'name': '', 'provider': 'globomap', 'properties': [ { 'key': 'maintenance', 'value': False, 'description': 'Maintenance' }, { 'key': 'equipment_type', 'value': 'Server', 'description': 'Equipment Type' }, { 'key': 'ips', 'value': ['10.0.0.1', 'bebe:bebe:bebe:0000:0000:0000:0000:0001'], 'description': 'IPs' }, ] } self.assertDictEqual(data, expected)
def test_data_spec_vlan(self): """Test method vlan of DataSpec""" vlan = open_json('tests/json/data_spec/vlan.json') data = DataSpec().vlan(vlan) expected = { 'id': '1', 'name': 'Vlan1', 'provider': 'napi', 'properties': [{ 'key': 'num_vlan', 'value': 2, 'description': 'Number of VLAN' }, { 'key': 'description', 'value': 'Vlan Description', 'description': 'Description' }, { 'value': False, 'key': 'active', 'description': 'Status' }] } self.assertDictEqual(data, expected)
def test_data_spec_vip(self): """Test method vip of DataSpec""" vip = open_json('tests/json/data_spec/vip.json') data = DataSpec().vip(vip) expected = { 'id': '1', 'name': 'vip_teste', 'provider': 'napi', 'properties': [{ 'key': 'created', 'value': False, 'description': 'Created id Load Balancer' }, { 'key': 'ip', 'value': '10.10.0.2', 'description': 'IP' }, { 'key': 'environmentvip', 'value': 'FIN_VIP-ClientTxt-VIP-EnvP44Txt-VIP', 'description': 'Environment of VIP' }] } self.assertDictEqual(data, expected)
def _equipament(self, equipment): equipment['ipv4'] = [ip['ip'] for ip in equipment['ipsv4']] equipment['ipv6'] = [ip['ip'] for ip in equipment['ipsv6']] content = DataSpec().comp_unit(equipment) data = self._construct('PATCH', 'comp_unit', 'collections', content) return data
def test_data_spec_vlan(self): """Test method vlan of DataSpec""" vlan = open_json('tests/json/data_spec/vlan.json') data = DataSpec().vlan(vlan) expected = { 'id': '1', 'name': 'Vlan1', 'provider': 'napi', 'properties': { 'num_vlan': 2, 'description': 'Vlan Description', 'active': False }, 'properties_metadata': { 'num_vlan': { 'description': 'Number of VLAN' }, 'description': { 'description': 'Description' }, 'active': { 'description': 'Active Vlan' } } } self.assertDictEqual(data, expected)
def test_data_spec_comp_unit_acs(self): """Test method comp_unit of DataSpec""" comp_unit = open_json('tests/json/data_spec/comp_unit_acs.json') data = DataSpec().comp_unit(comp_unit) expected = { 'id': '8f1d34c1-ab89-4ef7-9d9d-0d57c2b6547b', 'provider': 'globomap', 'properties': { 'maintenance': False, 'equipment_type': 'Server', 'ips': [ '10.0.0.1', 'bebe:bebe:bebe:0000:0000:0000:0000:0001' ], }, 'properties_metadata': { 'maintenance': { 'description': 'Maintenance' }, 'equipment_type': { 'description': 'Equipment Type' }, 'ips': { 'description': 'IPs' }, } } self.assertDictEqual(data, expected)
def test_data_spec_pool_comp_unit_acs(self): """Test method pool_comp_unit of DataSpec""" pool_comp_unit = open_json( 'tests/json/data_spec/pool_comp_unit_acs.json') data = DataSpec().pool_comp_unit(pool_comp_unit, 1) expected = { 'from': 'pool/napi_1', 'to': 'comp_unit/globomap_8f1d34c1-ab89-4ef7-9d9d-0d57c2b6547b', 'id': '1', 'name': '10.0.0.2', 'provider': 'napi', 'properties': { 'ip': u'10.0.0.2', 'priority': 0, 'weight': 1, 'limit': 1000, 'port_real': 8080, 'status_last_update': None, 'status_monitor': 'Up', 'status_session': 'Up', 'status_healthcheck': 'Up' }, 'properties_metadata': { 'ip': { 'description': 'IP' }, 'priority': { 'description': 'Priority' }, 'weight': { 'description': 'Weight' }, 'limit': { 'description': 'Limit' }, 'port_real': { 'description': 'Port' }, 'status_last_update': { 'description': 'Last Update of Status' }, 'status_monitor': { 'description': 'User Up/Down (Forced)' }, 'status_session': { 'description': 'Enabled/Disabled' }, 'status_healthcheck': { 'description': 'Up/Down (Healthcheck)' } } } self.assertDictEqual(data, expected)
def _equipment_ipv6(self, equipment): data_list = list() for ipv6 in equipment.get('ipsv6'): content = DataSpec().network_comp_unit(ipv6['ip'], equipment['name'], ipv6['id']) data = self._construct('UPDATE', 'network_comp_unit', 'edges', content) data_list.append(data) return data_list
def _pool_members(self, pool): data_list = [] for member in pool.get('server_pool_members', []): content = DataSpec().pool_comp_unit(member, pool['id']) data = self._construct('UPDATE', 'pool_comp_unit', 'edges', content) data_list.append(data) return data_list
def _equipment_ipv4(self, equipment): data_list = [] for ipv4 in equipment.get('ipsv4'): ipv4['ip']['networkipv4'] = ipv4['ip']['networkipv4']['id'] content = DataSpec().network_comp_unit( ipv4['ip'], equipment['name'], ipv4['id']) data = self._construct( 'UPDATE', 'network_comp_unit', 'edges', content) data_list.append(data) return data_list
def _ports(self, vip): data_list = [] for port in vip['ports']: for pool in port['pools']: pool['port'] = port['port'] content = DataSpec().port(pool, vip['id']) data = self._construct('UPDATE', 'port', 'edges', content) data_list.append(data) return data_list
def test_data_spec_network_v6_comp_unit(self): """Test method network_comp_unit(v6) of DataSpec""" network = open_json('tests/json/data_spec/network_v6_comp_unit.json') data = DataSpec().network_comp_unit(network, 'EQPT1', 6) expected = { 'from': 'network/napi_v6_2', 'to': 'comp_unit/globomap_eqpt1', 'id': 'v6_6', 'provider': 'napi', } self.assertDictEqual(data, expected)
def test_data_spec_vlan_network_v6(self): """Test method vlan_network(v6) of DataSpec""" network = open_json('tests/json/data_spec/network_v6.json') data = DataSpec().vlan_network(network) expected = { 'from': 'vlan/napi_3', 'to': 'network/napi_v6_1', 'id': 'v6_1', 'name': '31 - bebe:bebe:bebe:0000:0000:0000:0000:0000/64', 'provider': 'napi', } self.assertDictEqual(data, expected)
def test_data_spec_port(self): """Test method port of DataSpec""" vip = open_json('tests/json/data_spec/port.json') data = DataSpec().port(vip, 1) expected = { 'from': 'vip/napi_1', 'to': 'pool/napi_1', 'id': '1', 'name': '8080', 'provider': 'napi' } self.assertDictEqual(data, expected)
def test_data_spec_network_v6_comp_unit_acs(self): """Test method network_comp_unit(v6) of DataSpec""" network = open_json('tests/json/data_spec/network_v6_comp_unit.json') data = DataSpec().network_comp_unit( network, 'vm-8f1d34c1-ab89-4ef7-9d9d-0d57c2b6547b', 6) expected = { 'from': 'network/napi_v6_2', 'to': 'comp_unit/globomap_8f1d34c1-ab89-4ef7-9d9d-0d57c2b6547b', 'id': 'v6_6', 'provider': 'napi', } self.assertDictEqual(data, expected)
def test_data_spec_vlan_network_v4(self): """Test method vlan_network(v4) of DataSpec""" network = open_json('tests/json/data_spec/network_v4.json') data = DataSpec().vlan_network(network) expected = { 'from': 'vlan/napi_3', 'to': 'network/napi_v4_1', 'id': 'v4_1', 'name': '31 - 10.0.0.0/24', 'provider': 'napi', } self.assertDictEqual(data, expected) self.assertDictEqual(data, expected)
def test_data_spec_father_environment(self): """Test method father_environment of DataSpec""" environment = open_json('tests/json/data_spec/environment.json') data = DataSpec().father_environment(environment) name = 'DIVISAO_DC_SPACE_2 - AMBIENTE_LOGICO_SPACE_2 - GRUPO_L3_SPACE_2 / ' \ 'DIVISAO_DC_YELLOW - AMBIENTE_LOGICO_YELLOW - GRUPO_L3_YELLOW' expected = { 'from': 'environment/napi_7', 'to': 'environment/napi_1', 'id': '1', 'name': name, 'provider': 'napi' } self.assertDictEqual(data, expected)
def test_data_spec_environment_vlan(self): """Test method environment_vlan of DataSpec""" vlan = open_json('tests/json/data_spec/vlan.json') data = DataSpec().environment_vlan(vlan) name = 'DIVISAO_DC_SPACE_2 - AMBIENTE_LOGICO_SPACE_2 - ' \ 'GRUPO_L3_SPACE_2 / 2' expected = { 'from': 'environment/napi_3', 'to': 'vlan/napi_1', 'id': '1', 'name': name, 'provider': 'napi', } self.assertDictEqual(data, expected)
def test_data_spec_pool(self): """Test method pool of DataSpec""" pool = open_json('tests/json/data_spec/pool.json') data = DataSpec().pool(pool) expected = { 'id': '1', 'name': 'Pool_1', 'provider': 'napi', 'properties': [{ 'key': 'default_port', 'value': 8080, 'description': 'Default Port of Pool' }, { 'key': 'environment', 'value': 'DIVISAO_DC_POOL - AMBIENTE_LOGICO_POOL - GRUPO_L3_POOL', 'description': 'Environment of Pool' }, { 'key': 'servicedownaction', 'value': 'none', 'description': 'Action On Service Down' }, { 'key': 'healthcheck', 'value': 'TCP', 'description': 'Healthcheck Type' }, { 'key': 'lb_method', 'value': 'least-conn', 'description': 'Method of Load Balancing' }, { 'key': 'default_limit', 'value': 100, 'description': 'Limit of Connections' }, { 'key': 'pool_created', 'value': True, 'description': 'Created in Load Balancer' }] } self.assertDictEqual(data, expected)
def test_data_spec_environment(self): """Test method environment of DataSpec""" environment = open_json('tests/json/data_spec/environment.json') data = DataSpec().environment(environment) expected = { 'id': '1', 'name': 'DIVISAO_DC_SPACE_2 - AMBIENTE_LOGICO_SPACE_2 - GRUPO_L3_SPACE_2', 'provider': 'napi', 'properties': [{ 'key': 'default_vrf', 'value': 'default', 'description': 'Default VRF' }] } self.assertDictEqual(data, expected)
def test_data_spec_pool_comp_unit(self): """Test method pool_comp_unit of DataSpec""" pool_comp_unit = open_json('tests/json/data_spec/pool_comp_unit.json') data = DataSpec().pool_comp_unit(pool_comp_unit, 1) expected = { 'from': 'pool/napi_1', 'to': 'comp_unit/globomap_serverspace1', 'id': '1', 'name': '10.0.0.2', 'provider': 'napi', 'properties': [{ 'key': 'ip', 'value': u'10.0.0.2', 'description': 'IP' }, { 'key': 'priority', 'value': 0, 'description': 'Priority' }, { 'key': 'weight', 'value': 1, 'description': 'Weight' }, { 'key': 'limit', 'value': 1000, 'description': 'Limit' }, { 'key': 'port_real', 'value': 8080, 'description': 'Port' }] } self.assertDictEqual(data, expected)
def test_data_spec_network_v4(self): """Test method network(v4) of DataSpec""" network = open_json('tests/json/data_spec/network_v4.json') data = DataSpec().network(network) expected = { 'id': 'v4_1', 'name': '10.0.0.0/24', 'provider': 'napi', 'properties': { 'active': True, 'network_type': 'Point-to-Point' }, 'properties_metadata': { 'active': { 'description': 'Active Network' }, 'network_type': { 'description': 'Network Type' } } } self.assertDictEqual(data, expected)
def test_data_spec_network_v6(self): """Test method network(v6) of DataSpec""" network = open_json('tests/json/data_spec/network_v6.json') data = DataSpec().network(network) expected = { 'id': 'v6_1', 'name': 'bebe:bebe:bebe:0000:0000:0000:0000:0000/64', 'provider': 'napi', 'properties': [{ 'key': 'active', 'value': False, 'description': 'Network Status' }, { 'key': 'network_type', 'value': 'Point-to-Point', 'description': 'Network Type' }] } self.assertDictEqual(data, expected)
def _environment_vlan(self, vlan): content = DataSpec().environment_vlan(vlan) data = self._construct('UPDATE', 'environment_vlan', 'edges', content) return data
def _environment(self, environment): content = DataSpec().environment(environment) data = self._construct('UPDATE', 'environment', 'collections', content) return data
def test_data_spec_comp_unit_with_list(self): with self.assertRaises(Exception): DataSpec().comp_unit(list())
def _father_environment(self, environment): content = DataSpec().father_environment(environment) data = self._construct('UPDATE', 'father_environment', 'edges', content) return data
def test_data_spec_pool_with_list(self): with self.assertRaises(Exception): DataSpec().pool(list())
def test_data_spec_vip_with_list(self): with self.assertRaises(Exception): DataSpec().vip(list())