+++ /dev/null
-package de.juplo.demos.pwreset.adapters.out;
-
-import au.com.dius.pact.consumer.MockServer;
-import au.com.dius.pact.consumer.dsl.PactDslWithProvider;
-import au.com.dius.pact.consumer.junit5.PactConsumerTestExt;
-import au.com.dius.pact.consumer.junit5.PactTestFor;
-import au.com.dius.pact.core.model.RequestResponsePact;
-import au.com.dius.pact.core.model.annotations.Pact;
-import org.junit.jupiter.api.Test;
-import org.junit.jupiter.api.extension.ExtendWith;
-import org.springframework.boot.web.client.RestTemplateBuilder;
-import org.springframework.web.client.RestTemplate;
-
-import java.util.Map;
-import java.util.Optional;
-import java.util.UUID;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.core.api.Assertions.fail;
-
-
-@ExtendWith(PactConsumerTestExt.class)
-@PactTestFor(providerName = "UsersProvider")
-public class RemoteUsersServiceConsumerIT
-{
- @Pact(consumer="EmailServicesConsumer")
- public RequestResponsePact getExistingUserByEmail(PactDslWithProvider builder)
- {
- return builder
- .given("User with email pact@juplo.de exists")
- .uponReceiving("Request for user with email pact@juplo.de")
- .path("/get")
- .query("email=pact@juplo.de")
- .method("GET")
- .willRespondWith()
- .status(200)
- .headers(Map.of("Content-Type", "application/json;charset=UTF-8"))
- .body("{\"id\": \"123e4567-e89b-12d3-a456-426614174000\"}")
- .toPact();
- }
-
- @Test
- @PactTestFor(pactMethod = "getExistingUserByEmail")
- public void testGetExistingUserByEmail(MockServer mockServer)
- {
- RestTemplate restTemplate =
- new RestTemplateBuilder()
- .rootUri(mockServer.getUrl())
- .build();
- RemoteUsersServiceConsumer usersService =
- new RemoteUsersServiceConsumer(
- "/get?email={email}",
- restTemplate);
- try
- {
- Optional<UUID> result =
- usersService.getUserByEmail("pact@juplo.de");
-
- assertThat(result.isPresent()).isTrue();
- assertThat(result.get()).isEqualTo(UUID.fromString("123e4567-e89b-12d3-a456-426614174000"));
- }
- catch (Exception e)
- {
- fail("Unexpected exception", e);
- }
- }
-}