- changed status to open
Invalid json schema doesn't fail the test
Issue #18
resolved
We tried to validate against a swagger file which contains some invalid urls and it fails during
ValidationReport report = (ValidationReport)((PactFragment)pactFragment.get()).toPact().getInteractions().stream().map((i) -> {
return this.validator.validate(new PactRequest(i.getRequest()), new PactResponse(i.getResponse()));
Exception:
com.github.fge.jsonschema.core.exceptions.InvalidSchemaException: fatal: invalid JSON Schema, cannot continue
Syntax errors:
[ {
"level" : "error",
"message" : "string is not a valid URI: \"#/definitions/{\n [......],
"domain" : "syntax",
"schema" : {
"loadingURI" : "#",
"pointer" : ""
},
"keyword" : "$ref",
"value" : "string is not a valid URI: \"#/definitions/{\n [......],
} ]
level: "fatal"
at com.github.fge.jsonschema.processors.validation.InstanceValidator.process(InstanceValidator.java:115)
at com.github.fge.jsonschema.processors.validation.ValidationProcessor.process(ValidationProcessor.java:56)
at com.github.fge.jsonschema.processors.validation.ValidationProcessor.process(ValidationProcessor.java:34)
at com.github.fge.jsonschema.core.processing.ProcessingResult.of(ProcessingResult.java:79)
at com.github.fge.jsonschema.main.JsonSchema.doValidate(JsonSchema.java:76)
at com.github.fge.jsonschema.main.JsonSchema.validate(JsonSchema.java:109)
at com.atlassian.oai.validator.schema.SchemaValidator.doValidate(SchemaValidator.java:116)
at com.atlassian.oai.validator.schema.SchemaValidator.validate(SchemaValidator.java:70)
at com.atlassian.oai.validator.interaction.ResponseValidator.validateResponse(ResponseValidator.java:70)
at com.atlassian.oai.validator.SwaggerRequestResponseValidator.validate(SwaggerRequestResponseValidator.java:141)
at com.atlassian.oai.validator.pact.ValidatedPactProviderRule.lambda$validatePactDef$0(ValidatedPactProviderRule.java:77)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.reduce(ReferencePipeline.java:474)
at com.atlassian.oai.validator.pact.ValidatedPactProviderRule.validatePactDef(ValidatedPactProviderRule.java:78)
at com.atlassian.oai.validator.pact.ValidatedPactProviderRule.access$000(ValidatedPactProviderRule.java:27)
at com.atlassian.oai.validator.pact.ValidatedPactProviderRule$1.evaluate(ValidatedPactProviderRule.java:61)
Comments (3)
-
-
reporter Test is now failing with invalid schema! thanks James :)
-
- changed status to resolved
Fixed in 1.0.4
- Log in to comment