def test_put_port(self): nb_db = Mock() nb_db.update_port.return_value = { PortMapper.REST_PORT_ID: str(PORT_ID07), } handler, params = SelectingHandler.get_response_handler( responses(), PUT, PORT_ENTITY.split('/')) response = handler(nb_db, '{"port" :{}}', {PORT_ID: str(PORT_ID07)}) response_json = json.loads(response.body) assert response_json['port']['id'] == str(PORT_ID07)
def test_delete_port(self): nb_db = Mock() handler, params = SelectingHandler.get_response_handler( responses(), DELETE, PORT_ENTITY.format(port_id=PORT_ID07).split('/')) handler(nb_db, NOT_RELEVANT, params) nb_db.delete_port.assert_called_once_with(str(PORT_ID07))
def test_show_port(self): nb_db = Mock() nb_db.get_port.return_value = { PortMapper.REST_PORT_ID: str(PORT_ID07), PortMapper.REST_PORT_NAME: 'port_name', PortMapper.REST_PORT_SECURITY_GROUPS: [], } handler, params = SelectingHandler.get_response_handler( responses(), GET, PORT_ENTITY.split('/')) response = handler(nb_db, NOT_RELEVANT, {PORT_ID: PORT_ID07}) response_json = json.loads(response.body) assert response_json['port']['id'] == str(PORT_ID07) assert response_json['port']['name'] == 'port_name' assert response_json['port']['security_groups'] == []
def _test_invalid_content(self, content): for path in [NETWORKS, PORTS, SUBNETS]: handler, params = SelectingHandler.get_response_handler( responses(), POST, path.split('/')) with pytest.raises(BadRequestError): handler(NOT_RELEVANT, content, NOT_RELEVANT) for path in [ NETWORK_ENTITY.format(network_id=7), PORT_ENTITY.format(port_id=7), SUBNET_ENTITY.format(subnet_id=7) ]: handler, params = SelectingHandler.get_response_handler( responses(), PUT, path.split('/')) with pytest.raises(BadRequestError): handler(NOT_RELEVANT, content, NOT_RELEVANT)
def test_check_neutron_responses_required_by_engine_are_present(self): for method in [GET, POST]: for path in [NETWORKS, PORTS, SUBNETS, ROUTERS]: handler, params = SelectingHandler.get_response_handler( responses(), method, path.split('/')) assert handler is not None assert params is not None assert not params for method in [GET, PUT, DELETE]: for path in [ NETWORK_ENTITY.format(network_id=7), PORT_ENTITY.format(port_id=7), SUBNET_ENTITY.format(subnet_id=7), ROUTER_ENTITY.format(router_id=7) ]: handler, params = SelectingHandler.get_response_handler( responses(), method, path.split('/')) assert handler is not None assert params is not None assert params.values()[0] == '7' for path in [ ADD_ROUTER_INTERFACE.format(router_id=7), DELETE_ROUTER_INTERFACE.format(router_id=7) ]: handler, params = SelectingHandler.get_response_handler( responses(), PUT, path.split('/')) assert handler is not None assert params is not None assert params['router_id'] == '7' for path in [FLOATINGIPS, SECURITY_GROUPS]: handler, params = SelectingHandler.get_response_handler( responses(), GET, path.split('/')) assert handler is not None # This is a test call engine makes to check if provider is alive handler, params = SelectingHandler.get_response_handler( responses(), GET, ''.split('/')) assert handler is not None