import mock import pytest from openapi_core.schema.links.models import Link from openapi_core.schema.servers.models import Server class TestLinks(object): @pytest.fixture def link_factory(self): def link_factory(request_body, server): parameters = { 'par1': mock.sentinel.par1, 'par2': mock.sentinel.par2, } return Link( 'op_id', parameters, request_body, 'Test link', server ) return link_factory servers = [ None, Server("https://bad.remote.domain.net/"), Server("http://localhost") ] request_body_list = [ None, "request", '{"request": "value", "opt": 2}', {"request": "value", "opt": 2} ] @pytest.mark.parametrize("server", servers) @pytest.mark.parametrize("request_body", request_body_list) def test_iteritems(self, link_factory, request_body, server): link = link_factory(request_body, server) for par_name in link.parameters: assert link[par_name] == link.parameters[par_name]