Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package io.pact.workshop.product_service.kafka;
- import au.com.dius.pact.provider.MessageAndMetadata;
- import au.com.dius.pact.provider.PactVerifyProvider;
- import au.com.dius.pact.provider.junit5.MessageTestTarget;
- import au.com.dius.pact.provider.junit5.PactVerificationContext;
- import au.com.dius.pact.provider.junit5.PactVerificationInvocationContextProvider;
- import au.com.dius.pact.provider.junitsupport.Consumer;
- import au.com.dius.pact.provider.junitsupport.Provider;
- import au.com.dius.pact.provider.junitsupport.loader.PactBroker;
- import au.com.dius.pact.provider.junitsupport.loader.PactBrokerAuth;
- import java.util.HashMap;
- import java.util.Map;
- import org.junit.jupiter.api.BeforeEach;
- import org.junit.jupiter.api.TestTemplate;
- import org.junit.jupiter.api.extension.ExtendWith;
- import org.springframework.boot.test.context.SpringBootTest;
- @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
- @Provider("jsonKafkaProviderApp")
- @Consumer("jsonKafkaConsumerApp")
- @PactBroker(host = "${pactbroker.host:localhost}", port = "${pactbroker.port:9292}", scheme = "${pactbroker.scheme:http}", authentication = @PactBrokerAuth(username = "${pactbroker.auth.username:pact_workshop}", password = "${pactbroker.auth.password:pact_workshop}"))
- public class JsonKafkaProviderTest {
- private static final String JSON_CONTENT_TYPE = "application/json";
- private static final String KEY_CONTENT_TYPE = "contentType";
- @BeforeEach
- void before(PactVerificationContext context) {
- context.setTarget(new MessageTestTarget());
- }
- @TestTemplate
- @ExtendWith(PactVerificationInvocationContextProvider.class)
- void pactVerificationTestTemplate(PactVerificationContext context) {
- context.verifyInteraction();
- }
- @PactVerifyProvider("A simple message")
- MessageAndMetadata verifySimpleMessageEvent() {
- Map<String, Object> metadata = new HashMap<String, Object>() {
- {
- put(KEY_CONTENT_TYPE, JSON_CONTENT_TYPE);
- }
- };
- return new MessageAndMetadata(new byte[] {}, metadata);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement