/** * Closes the current array */ @Override public DslPart closeArray() { if (parent instanceof PactDslJsonArray) { closeObject(); return parent.closeArray(); } else { throw new UnsupportedOperationException("can't call closeArray on an Object"); } }
/** * Closes the current array */ @Override public DslPart closeArray() { if (parent instanceof PactDslJsonArray) { closeObject(); return parent.closeArray(); } else { throw new UnsupportedOperationException("can't call closeArray on an Object"); } }
public LambdaDslJsonArray object(final Consumer<LambdaDslObject> o) { final PactDslJsonBody pactObject = pactArray.object(); LambdaDslObject object = new LambdaDslObject(pactObject); o.accept(object); pactObject.closeObject(); return this; }
/** * Accepts any key, and each key is mapped to a map that must match the following object definition. * Note: this needs the Java system property "pact.matching.wildcard" set to value "true" when the pact file is verified. * * @param exampleKey Example key to use for generating bodies */ public LambdaDslObject eachKeyLike(String exampleKey, Consumer<LambdaDslObject> nestedObject) { final PactDslJsonBody objectLike = object.eachKeyLike(exampleKey); final LambdaDslObject dslObject = new LambdaDslObject(objectLike); nestedObject.accept(dslObject); objectLike.closeObject(); return this; }
public LambdaDslObject object(final String name, final Consumer<LambdaDslObject> nestedObject) { final PactDslJsonBody pactObject = object.object(name); final LambdaDslObject dslObject = new LambdaDslObject(pactObject); nestedObject.accept(dslObject); pactObject.closeObject(); return this; }
@Override public DslPart close() { DslPart parentToReturn = this; if (!closed) { DslPart parent = closeObject(); while (parent != null) { parentToReturn = parent; if (parent instanceof PactDslJsonArray) { parent = parent.closeArray(); } else { parent = parent.closeObject(); } } } return parentToReturn; }
@Override public DslPart close() { DslPart parentToReturn = this; if (!closed) { DslPart parent = closeObject(); while (parent != null) { parentToReturn = parent; if (parent instanceof PactDslJsonArray) { parent = parent.closeArray(); } else { parent = parent.closeObject(); } } } return parentToReturn; }
/** * Accepts any key, and each key is mapped to a list of items that must match the following object definition. * Note: this needs the Java system property "pact.matching.wildcard" set to value "true" when the pact file is verified. * * @param exampleKey Example key to use for generating bodies */ public LambdaDslObject eachKeyMappedToAnArrayLike(String exampleKey, Consumer<LambdaDslObject> nestedObject) { final PactDslJsonBody objectLike = object.eachKeyMappedToAnArrayLike(exampleKey); final LambdaDslObject dslObject = new LambdaDslObject(objectLike); nestedObject.accept(dslObject); objectLike.closeObject().closeArray(); return this; }
@Pact(provider = "userservice", consumer = "userclient") public MessagePact userCreatedMessagePact(MessagePactBuilder builder) { PactDslJsonBody body = new PactDslJsonBody(); body.stringType("messageUuid"); body.object("user") .numberType("id", 42L) .stringType("name", "Zaphod Beeblebrox") .closeObject(); // @formatter:off return builder .expectsToReceive("a user created message") .withContent(body) .toPact(); // @formatter:on }