def test_validate_resolved(): simple_yaml = "tests/simple.yaml" oas = yaml_load_file(simple_yaml, cb=replace_branch_name) resolver = OpenapiResolver(oas) oas_resolved = resolver.dump_yaml() validate_spec(oas_resolved) Path("tests/out.simple.yaml").write_text(resolver.dump())
def test_resolve_subreference_fix7_1(): fpath = Path("data/subreference.yaml") oat = yaml_load_file(str(fpath)) resolver = OpenapiResolver(oat, str(fpath.resolve())) resolver.resolve() yaml_ = resolver.dump_yaml() components = defaultdict(dict, yaml_.pop("components")) log.debug(yaml_dump(components)) assert components["schemas"]["TaxCode"]
def test_resolve_subreference_fix6_2(): fpath = Path("data/subreference.yaml") oat = yaml_load_file(str(fpath)) resolver = OpenapiResolver(oat, str(fpath.resolve())) resolver.resolve() yaml_ = resolver.dump_yaml() components = defaultdict(dict, yaml_.pop("components")) log.debug(yaml_dump(components)) assert components["responses"]["429TooManyRequests"] assert components["schemas"]["Problem"] assert components["headers"]["Retry-After"]
def test_resolve_subreference_fix6(): # preserve nested objects. fpath = Path("data/headers/subheaders.yaml") oat = yaml_load_file(str(fpath)) resolver = OpenapiResolver(oat, str(fpath)) resolver.resolve() yaml_ = resolver.dump_yaml() components = defaultdict(dict, yaml_.pop("components")) components[fpath.parent.name].update(yaml_) log.debug(yaml_dump(components)) assert components["headers"]["headers"]
def test_resolve_subreference_fix6_1(): oat = { "components": { "headers": { "X-Foo": {"$ref": "data/headers/subheaders.yaml#/headers/Retry-After"} } } } resolver = OpenapiResolver(oat, None) resolver.resolve() yaml_ = resolver.dump_yaml() components = defaultdict(dict, yaml_.pop("components")) log.debug(yaml_dump(components)) assert components["headers"]["Retry-After"]
def test_resolve_local_2(): # load files from different paths # and resolve relative references. fpath = Path("data/responses/responses.yaml") oat = yaml_load_file(str(fpath)) resolver = OpenapiResolver(oat, str(fpath)) resolver.resolve() yaml_ = resolver.dump_yaml() components = defaultdict(dict, yaml_.pop("components")) components[fpath.parent.name].update(yaml_) log.debug(yaml_dump(components)) assert components["headers"]["Retry-After"] assert components["schemas"]["Problem"]
def test_resolve_local_3(): # load files from different paths # and resolve relative references. fpath = Path("data/parameters/parameters.yaml") oat = yaml_load_file(str(fpath)) resolver = OpenapiResolver(oat, str(fpath)) resolver.resolve() yaml_ = resolver.dump_yaml() components = defaultdict(dict, yaml_.pop("components")) components[fpath.parent.name].update(yaml_) log.debug(yaml_dump(components)) assert components["schemas"]["Person"] assert components["parameters"]["citizen"]["schema"] assert components["schemas"]["TaxCode"]