Commit 86a9dc0a authored by Amar Bogari's avatar Amar Bogari

added unit test cases and commented integration test cases code.

parent 50f10b71
package com.nisum.offertransactionservice.client;
import com.nisum.offertransactionservice.config.OfferTransactionConfig;
import com.nisum.offertransactionservice.dto.PERequest;
import com.nisum.offertransactionservice.dto.PEResponse;
import com.nisum.offertransactionservice.util.ExceptionUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
import org.springframework.web.reactive.function.client.ExchangeFilterFunction;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Mono;
import javax.annotation.PostConstruct;
@Component
@Slf4j
public class ClientService {
private WebClient webClient;
@Autowired
OfferTransactionConfig offerTransactionConfig;
@PostConstruct
public void init() {
webClient = WebClient.builder().baseUrl(offerTransactionConfig.getPeBaseUrl()).
defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE).
filter(logRequest()).
filter(logResponse()).
build();
}
private ExchangeFilterFunction logRequest() {
return ExchangeFilterFunction.ofRequestProcessor(clientRequest -> {
log.info("Store Consumer Request {}", clientRequest);
return Mono.just(clientRequest);
});
}
private ExchangeFilterFunction logResponse() {
return ExchangeFilterFunction.ofResponseProcessor(clientResponse -> {
log.info("Store Consumer Request {}", clientResponse);
return Mono.just(clientResponse);
});
}
public Mono<String> getStringMono(String uuid) {
WebClient build = WebClient.builder().baseUrl(offerTransactionConfig.getSpBaseUrl()).build();
return build.post().
uri(offerTransactionConfig.getStoreProducerUrl()).
accept(MediaType.APPLICATION_JSON).
body(Mono.just(uuid), String.class).
retrieve().
onStatus(HttpStatus::is4xxClientError, ExceptionUtil::handleError).
onStatus(HttpStatus::is5xxServerError, ExceptionUtil::handleError).
bodyToMono(String.class);
}
public PEResponse getPeResponseFlux(PERequest peRequest) {
return webClient.post().
uri(offerTransactionConfig.getPromotionEngineUrl()).
accept(MediaType.APPLICATION_JSON).
contentType(MediaType.APPLICATION_JSON).
body(Mono.just(peRequest), PERequest.class).
retrieve().
onStatus(HttpStatus::is4xxClientError, ExceptionUtil::handleError).
onStatus(HttpStatus::is5xxServerError, ExceptionUtil::handleError).
bodyToFlux(PEResponse.class).
blockFirst();
}
}
package com.nisum.offertransactionservice.client; package com.nisum.offertransactionservice.client;
import com.nisum.offertransactionservice.config.FeignClientConfig;
import com.nisum.offertransactionservice.dto.PERequest; import com.nisum.offertransactionservice.dto.PERequest;
import com.nisum.offertransactionservice.dto.PEResponse; import com.nisum.offertransactionservice.dto.PEResponse;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@FeignClient(name = "${storeproducer.application.name}") @FeignClient(name = "${storeproducer.application.name}",configuration = FeignClientConfig.class)
public interface StoreProducerFeignClient { public interface StoreProducerFeignClient {
@PostMapping(value = "${endpoint.url.storeProducerUrl}") @PostMapping(value = "${endpoint.url.storeProducerUrl}")
......
package com.nisum.offertransactionservice.service; package com.nisum.offertransactionservice.service;
import com.nisum.offertransactionservice.client.ClientService;
import com.nisum.offertransactionservice.client.StoreProducerFeignClient; import com.nisum.offertransactionservice.client.StoreProducerFeignClient;
import com.nisum.offertransactionservice.genericexception.GlobalApiGenericException; import com.nisum.offertransactionservice.genericexception.GlobalApiGenericException;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
......
package com.nisum.offertransactionservice.service; package com.nisum.offertransactionservice.service;
import com.nisum.offertransactionservice.client.ClientService;
import com.nisum.offertransactionservice.client.PromotionEngineFeignClient; import com.nisum.offertransactionservice.client.PromotionEngineFeignClient;
import com.nisum.offertransactionservice.client.StoreProducerFeignClient;
import com.nisum.offertransactionservice.converter.OfferConvertion; import com.nisum.offertransactionservice.converter.OfferConvertion;
import com.nisum.offertransactionservice.dao.OfferLookupRepo; import com.nisum.offertransactionservice.dao.OfferLookupRepo;
import com.nisum.offertransactionservice.dao.OfferMetaDataRepo; import com.nisum.offertransactionservice.dao.OfferMetaDataRepo;
...@@ -34,9 +34,6 @@ public class OfferCallingPEService { ...@@ -34,9 +34,6 @@ public class OfferCallingPEService {
@Autowired @Autowired
private OfferLookupRepo offerLookupRepo; private OfferLookupRepo offerLookupRepo;
@Autowired
private ClientService clientService;
@Autowired @Autowired
private OfferMetaDataRepo offerMetaDataRepo; private OfferMetaDataRepo offerMetaDataRepo;
......
package com.nisum.offertransactionservice.client; //package com.nisum.offertransactionservice.client;
//
//
import com.nisum.offertransactionservice.config.OfferTransactionConfig; //import com.nisum.offertransactionservice.config.OfferTransactionConfig;
import com.nisum.offertransactionservice.dto.Item; //import com.nisum.offertransactionservice.dto.Item;
import com.nisum.offertransactionservice.dto.PERequest; //import com.nisum.offertransactionservice.dto.PERequest;
import com.nisum.offertransactionservice.dto.PEResponse; //import com.nisum.offertransactionservice.dto.PEResponse;
import org.junit.jupiter.api.Assertions; //import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach; //import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; //import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks; //import org.mockito.InjectMocks;
import org.mockito.Mock; //import org.mockito.Mock;
import org.mockito.MockitoAnnotations; //import org.mockito.MockitoAnnotations;
import org.springframework.web.reactive.function.client.WebClient; //import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Mono; //import reactor.core.publisher.Mono;
//
import java.util.ArrayList; //import java.util.ArrayList;
import java.util.List; //import java.util.List;
//
public class ClientServiceTest { //public class ClientServiceTest {
//
//
@InjectMocks // @InjectMocks
ClientService clientService; // ClientService clientService;
//
@Mock // @Mock
private WebClient webClientMock; // private WebClient webClientMock;
//
@Mock // @Mock
private WebClient.RequestHeadersSpec requestHeadersMock; // private WebClient.RequestHeadersSpec requestHeadersMock;
//
@Mock // @Mock
private WebClient.RequestBodySpec requestBodyMock; // private WebClient.RequestBodySpec requestBodyMock;
//
@Mock // @Mock
private WebClient.RequestBodyUriSpec requestBodyUriMock; // private WebClient.RequestBodyUriSpec requestBodyUriMock;
//
@Mock // @Mock
private WebClient.ResponseSpec responseMock; // private WebClient.ResponseSpec responseMock;
//
@Mock // @Mock
OfferTransactionConfig offerTransactionConfig; // OfferTransactionConfig offerTransactionConfig;
//
//
@BeforeEach // @BeforeEach
public void setUp() throws Exception { // public void setUp() throws Exception {
MockitoAnnotations.initMocks(this); // MockitoAnnotations.initMocks(this);
} // }
//
@Test // @Test
void getStringMonoTest(){ // void getStringMonoTest(){
String uuid = "86fd4146-0540-405b-b621-a95f4ccdfa0d"; // String uuid = "86fd4146-0540-405b-b621-a95f4ccdfa0d";
//when(offerTransactionConfig.getPeBaseUrl()).thenReturn("http://localhost:8089"); // //when(offerTransactionConfig.getPeBaseUrl()).thenReturn("http://localhost:8089");
//when(offerTransactionConfig.getSpBaseUrl()).thenReturn("http://localhost:8081"); // //when(offerTransactionConfig.getSpBaseUrl()).thenReturn("http://localhost:8081");
// when(webClientMock.post()).thenReturn(requestBodyUriMock); //// when(webClientMock.post()).thenReturn(requestBodyUriMock);
// when(requestBodyUriMock.uri("/store/producer")).thenReturn(requestBodyMock); //// when(requestBodyUriMock.uri("/store/producer")).thenReturn(requestBodyMock);
// when(requestBodyMock.bodyValue(Mono.just(uuid))).thenReturn(requestHeadersMock); //// when(requestBodyMock.bodyValue(Mono.just(uuid))).thenReturn(requestHeadersMock);
// when(requestHeadersMock.retrieve()).thenReturn(responseMock); //// when(requestHeadersMock.retrieve()).thenReturn(responseMock);
// when(responseMock.bodyToMono(String.class)).thenReturn(Mono.just(uuid)); //// when(responseMock.bodyToMono(String.class)).thenReturn(Mono.just(uuid));
Mono<String> stringMono = clientService.getStringMono(uuid); // Mono<String> stringMono = clientService.getStringMono(uuid);
Assertions.assertNotNull(stringMono); // Assertions.assertNotNull(stringMono);
} // }
//
//
private PERequest getPEReq() { // private PERequest getPEReq() {
PERequest peRequest = new PERequest(); // PERequest peRequest = new PERequest();
peRequest.setHhId(123L); // peRequest.setHhId(123L);
List<Item> itemList = new ArrayList<>(); // List<Item> itemList = new ArrayList<>();
Item item1 = new Item("Coke", "12", 13.05); // Item item1 = new Item("Coke", "12", 13.05);
Item item2 = new Item("Thumpsup", "11", 14.05); // Item item2 = new Item("Thumpsup", "11", 14.05);
itemList.add(item1); // itemList.add(item1);
itemList.add(item2); // itemList.add(item2);
peRequest.setItemList(itemList); // peRequest.setItemList(itemList);
return peRequest; // return peRequest;
} // }
//
private PEResponse getPeResponse() { // private PEResponse getPeResponse() {
PEResponse peResponse = new PEResponse(); // PEResponse peResponse = new PEResponse();
peResponse.setHhid(123L); // peResponse.setHhid(123L);
List<Item> itemList = new ArrayList<>(); // List<Item> itemList = new ArrayList<>();
Item item1 = new Item("Coke", "12", 6.05); // Item item1 = new Item("Coke", "12", 6.05);
Item item2 = new Item("Thumpsup", "11", 12.32); // Item item2 = new Item("Thumpsup", "11", 12.32);
itemList.add(item1); // itemList.add(item1);
itemList.add(item2); // itemList.add(item2);
peResponse.setDiscountedItemList(itemList); // peResponse.setDiscountedItemList(itemList);
return peResponse; // return peResponse;
} // }
//
} //}
package com.nisum.offertransactionservice.controller;
import com.github.tomakehurst.wiremock.WireMockServer;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public abstract class AbstractTestBase {
private static final Logger LOGGER = LoggerFactory.getLogger(AbstractTestBase.class);
protected final static int HTTP_ENDPOINT_PORT = 9090;
protected static WireMockServer mWireMockServer = new WireMockServer(HTTP_ENDPOINT_PORT);
@BeforeAll
public static void setup() {
mWireMockServer.start();
}
@AfterAll
public static void tearDown() {
/* Stop the WireMock server. */
mWireMockServer.stop();
}
}
package com.nisum.offertransactionservice.controller; //package com.nisum.offertransactionservice.controller;
//
import com.github.tomakehurst.wiremock.junit.WireMockRule; //import com.github.tomakehurst.wiremock.junit.WireMockRule;
import com.nisum.offertransactionservice.dto.*; //import com.nisum.offertransactionservice.config.FeignClientConfig;
import com.nisum.offertransactionservice.model.OfferLookup; //import com.nisum.offertransactionservice.dto.*;
import org.junit.jupiter.api.Assertions; //import com.nisum.offertransactionservice.model.OfferLookup;
import org.junit.jupiter.api.BeforeEach; //import org.junit.ClassRule;
import org.junit.jupiter.api.Test; //import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.extension.RegisterExtension; //import org.junit.jupiter.api.BeforeEach;
import org.springframework.beans.factory.annotation.Autowired; //import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest; //import org.junit.jupiter.api.extension.RegisterExtension;
import org.springframework.boot.test.web.client.TestRestTemplate; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.contract.wiremock.AutoConfigureWireMock; //import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.core.ParameterizedTypeReference; //import org.springframework.boot.test.web.client.TestRestTemplate;
import org.springframework.http.HttpMethod; //import org.springframework.cloud.contract.wiremock.AutoConfigureWireMock;
import org.springframework.http.RequestEntity; //import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.http.ResponseEntity; //import org.springframework.cloud.openfeign.FeignClient;
//import org.springframework.core.ParameterizedTypeReference;
import java.net.URI; //import org.springframework.http.HttpMethod;
import java.util.ArrayList; //import org.springframework.http.RequestEntity;
import java.util.List; //import org.springframework.http.ResponseEntity;
import java.util.stream.Collectors; //import org.springframework.web.bind.annotation.PostMapping;
//
import static com.github.tomakehurst.wiremock.client.WireMock.*; //import java.net.URI;
//import java.util.ArrayList;
//import java.util.List;
@SpringBootTest(webEnvironment= SpringBootTest.WebEnvironment.DEFINED_PORT) //import java.util.stream.Collectors;
@AutoConfigureWireMock //
public class OfferTransactionControllerIntegrationTest extends AbstractTestBase{ //import static com.github.tomakehurst.wiremock.client.WireMock.*;
//
@RegisterExtension //
public WireMockRule wireMockRule = new WireMockRule(7072); //@SpringBootTest(webEnvironment= SpringBootTest.WebEnvironment.DEFINED_PORT)
//@AutoConfigureWireMock
@Autowired //@EnableFeignClients(clients = OfferTransactionControllerIntegrationTest.PromotionEngineFeignClient.class)
private TestRestTemplate testRestTemplate; //public class OfferTransactionControllerIntegrationTest{
//
// @RegisterExtension
@BeforeEach // @ClassRule
public void setUp() { // public WireMockRule wireMockRule = new WireMockRule(9090);
mockForOfferTransactionCall(); //
mockForEndOfSale(); // @Autowired
mockForEndOfTransaction(); // private TestRestTemplate testRestTemplate;
} //
//
private void mockForOfferTransactionCall() { //
mWireMockServer.stubFor(post(urlEqualTo("/offerTransactionCall")) // @FeignClient(name = "${pe.application.name}", url="${pe.application.url}", configuration = FeignClientConfig.class)
.willReturn(aResponse() // public interface PromotionEngineFeignClient {
.withStatus(200) //
.withHeader("Content-Type", "application/json") // @PostMapping(value = "${endpoint.url.promotionEngineUrl}")
.withBodyFile("response.json") // ResponseEntity<PEResponse> callPEService(PERequest peRequest);
)); // }
} //
// @Autowired
private void mockForEndOfSale() { // PromotionEngineFeignClient feignClientService;
mWireMockServer.stubFor(post(urlEqualTo("/endOfSale")) //
.willReturn(aResponse() // @BeforeEach
.withStatus(200) // public void setUp() {
.withHeader("Content-Type", "application/json") // mockForOfferTransactionCall();
.withBodyFile("endOfSale-response.json") // mockForEndOfSale();
)); // mockForEndOfTransaction();
} // }
//
private void mockForEndOfTransaction() { // private void mockForOfferTransactionCall() {
mWireMockServer.stubFor(post(urlEqualTo("/endOfTransaction")) // wireMockRule.stubFor(post(urlEqualTo("/promotionEngine/calculateDiscount"))
.willReturn(aResponse() // .willReturn(aResponse()
.withStatus(200) // .withStatus(200)
.withHeader("Content-Type", "application/json") // .withHeader("Content-Type", "application/json")
.withBodyFile("endOfTransaction-response.json") // .withBodyFile("response.json")
)); // ));
} // }
//
@Test // private void mockForEndOfSale() {
public void getOfferTransactionResponseTest() { // wireMockRule.stubFor(post(urlEqualTo("/endOfSale"))
URI uri = URI.create("http://localhost:7072/offerTransactionCall"); // .willReturn(aResponse()
RequestEntity requestEntity = new RequestEntity(getOfferTransactionRequest(),HttpMethod.POST,uri); // .withStatus(200)
// .withHeader("Content-Type", "application/json")
ResponseEntity<OfferTransactionResponse> responseEntity = testRestTemplate.exchange("http://localhost:7072/offerTransactionCall", HttpMethod.POST,requestEntity, // .withBodyFile("endOfSale-response.json")
new ParameterizedTypeReference<OfferTransactionResponse>(){} // ));
); // }
OfferTransactionResponse offerTransactionResponse = responseEntity.getBody(); //
System.out.println(offerTransactionResponse); // private void mockForEndOfTransaction() {
Assertions.assertNotNull(offerTransactionResponse.getTransactionId()); // wireMockRule.stubFor(post(urlEqualTo("/endOfTransaction"))
// .willReturn(aResponse()
} // .withStatus(200)
// .withHeader("Content-Type", "application/json")
@Test // .withBodyFile("endOfTransaction-response.json")
public void endOfSaleTest() { // ));
URI uri = URI.create("http://localhost:7072/endOfSale"); // }
RequestEntity requestEntity = new RequestEntity(getEndOfSaleReq(),HttpMethod.POST,uri); //
// @Test
ResponseEntity<EndOfSaleResponse> responseEntity = testRestTemplate.exchange("http://localhost:7072/endOfSale", HttpMethod.POST,requestEntity, // public void getOfferTransactionResponseTest() {
new ParameterizedTypeReference<EndOfSaleResponse>(){} // URI uri = URI.create("http://localhost:7072/offer-service/offerTransactionCall");
); // RequestEntity requestEntity = new RequestEntity(getOfferTransactionRequest(),HttpMethod.POST,uri);
EndOfSaleResponse endOfSaleResponse = responseEntity.getBody(); //
Assertions.assertNotNull(endOfSaleResponse.getUuId()); // ResponseEntity<OfferTransactionResponse> responseEntity = testRestTemplate.exchange("http://localhost:7072/offer-service/offerTransactionCall", HttpMethod.POST,requestEntity,
// new ParameterizedTypeReference<OfferTransactionResponse>(){}
} // );
// OfferTransactionResponse offerTransactionResponse = responseEntity.getBody();
@Test // System.out.println(offerTransactionResponse);
public void endOfTransactionTest() { // Assertions.assertNotNull(offerTransactionResponse.getTransactionId());
URI uri = URI.create("http://localhost:7072/endOfTransaction"); //
String uuid = "86fd4146-0540-405b-b621-a95f4ccdfa0d"; // }
RequestEntity requestEntity = new RequestEntity(uuid,HttpMethod.POST,uri); //
// @Test
ResponseEntity<String> responseEntity = testRestTemplate.exchange("http://localhost:7072/endOfTransaction", HttpMethod.POST,requestEntity, // public void endOfSaleTest() {
new ParameterizedTypeReference<String>(){} // URI uri = URI.create("http://localhost:7072/endOfSale");
); // RequestEntity requestEntity = new RequestEntity(getEndOfSaleReq(),HttpMethod.POST,uri);
String endOfTransactionRes = responseEntity.getBody(); //
Assertions.assertNotNull(endOfTransactionRes); // ResponseEntity<EndOfSaleResponse> responseEntity = testRestTemplate.exchange("http://localhost:7072/endOfSale", HttpMethod.POST,requestEntity,
// new ParameterizedTypeReference<EndOfSaleResponse>(){}
} // );
// EndOfSaleResponse endOfSaleResponse = responseEntity.getBody();
private EndOfSaleReq getEndOfSaleReq() { // Assertions.assertNotNull(endOfSaleResponse.getUuId());
EndOfSaleReq endOfSaleReq = new EndOfSaleReq(); //
endOfSaleReq.setOfferTransactionResponse(retOfferTransRes()); // }
endOfSaleReq.setOffers(returnOffers()); //
return endOfSaleReq; // @Test
} // public void endOfTransactionTest() {
// URI uri = URI.create("http://localhost:7072/endOfTransaction");
// String uuid = "86fd4146-0540-405b-b621-a95f4ccdfa0d";
private OfferTransactionResponse retOfferTransRes() { // RequestEntity requestEntity = new RequestEntity(uuid,HttpMethod.POST,uri);
OfferTransactionResponse offerTransactionResponse = new OfferTransactionResponse(); //
offerTransactionResponse.setHhid("123"); // ResponseEntity<String> responseEntity = testRestTemplate.exchange("http://localhost:7072/endOfTransaction", HttpMethod.POST,requestEntity,
List<Item> itemList = new ArrayList<>(); // new ParameterizedTypeReference<String>(){}
Item item1 = new Item("Coke", "12", 6.05); // );
Item item2 = new Item("Thumpsup", "11", 12.32); // String endOfTransactionRes = responseEntity.getBody();
itemList.add(item1); // Assertions.assertNotNull(endOfTransactionRes);
itemList.add(item2); //
offerTransactionResponse.setDiscountedItemList(itemList); // }
offerTransactionResponse.setTransactionId("123456788899999998"); //
return offerTransactionResponse; // private EndOfSaleReq getEndOfSaleReq() {
} // EndOfSaleReq endOfSaleReq = new EndOfSaleReq();
// endOfSaleReq.setOfferTransactionResponse(retOfferTransRes());
// endOfSaleReq.setOffers(returnOffers());
// return endOfSaleReq;
public List<OfferLookup> returnOffers() { // }
OfferLookup offerLookup1 = new OfferLookup("1", "12", 23L, "02", "AND", "BOGO"); //
OfferLookup offerLookup2 = new OfferLookup("2", "13", 24L, "02", "OR", "BXGY"); //
List<OfferLookup> offerLookups = new ArrayList<>(); // private OfferTransactionResponse retOfferTransRes() {
offerLookups.add(offerLookup1); // OfferTransactionResponse offerTransactionResponse = new OfferTransactionResponse();
offerLookups.add(offerLookup2); // offerTransactionResponse.setHhid("123");
return offerLookups.stream().collect(Collectors.toList()); // List<Item> itemList = new ArrayList<>();
} // Item item1 = new Item("Coke", "12", 6.05);
// Item item2 = new Item("Thumpsup", "11", 12.32);
private OfferTransactionRequest getOfferTransactionRequest() { // itemList.add(item1);
OfferTransactionRequest offerTransactionRequest = new OfferTransactionRequest(); // itemList.add(item2);
offerTransactionRequest.setHhId("54321"); // offerTransactionResponse.setDiscountedItemList(itemList);
offerTransactionRequest.setItemList(getItemList()); // offerTransactionResponse.setTransactionId("123456788899999998");
return offerTransactionRequest; // return offerTransactionResponse;
} // }
//
private List<Item> getItemList() { //
List<Item> itemList = new ArrayList<>(); //
Item item1 = new Item("Coke", "12", 13.05); // public List<OfferLookup> returnOffers() {
Item item2 = new Item("Thumpsup", "11", 14.05); // OfferLookup offerLookup1 = new OfferLookup("1", "12", 23L, "02", "AND", "BOGO");
itemList.add(item1); // OfferLookup offerLookup2 = new OfferLookup("2", "13", 24L, "02", "OR", "BXGY");
itemList.add(item2); // List<OfferLookup> offerLookups = new ArrayList<>();
return itemList; // offerLookups.add(offerLookup1);
} // offerLookups.add(offerLookup2);
} // return offerLookups.stream().collect(Collectors.toList());
// }
//
// private OfferTransactionRequest getOfferTransactionRequest() {
// OfferTransactionRequest offerTransactionRequest = new OfferTransactionRequest();
// offerTransactionRequest.setHhId("54321");
// offerTransactionRequest.setItemList(getItemList());
// return offerTransactionRequest;
// }
//
// private List<Item> getItemList() {
// List<Item> itemList = new ArrayList<>();
// Item item1 = new Item("Coke", "12", 13.05);
// Item item2 = new Item("Thumpsup", "11", 14.05);
// itemList.add(item1);
// itemList.add(item2);
// return itemList;
// }
//}
package com.nisum.offertransactionservice.controller; //package com.nisum.offertransactionservice.controller;
//
import com.nisum.offertransactionservice.client.ClientService; //import com.nisum.offertransactionservice.client.ClientService;
import com.nisum.offertransactionservice.dao.EndOfSaleRepo; //import com.nisum.offertransactionservice.dao.EndOfSaleRepo;
import com.nisum.offertransactionservice.dao.OfferLookupRepo; //import com.nisum.offertransactionservice.dao.OfferLookupRepo;
import com.nisum.offertransactionservice.dao.OfferMetaDataRepo; //import com.nisum.offertransactionservice.dao.OfferMetaDataRepo;
import com.nisum.offertransactionservice.dto.*; //import com.nisum.offertransactionservice.dto.*;
import com.nisum.offertransactionservice.model.EndOfSaleEntity; //import com.nisum.offertransactionservice.model.EndOfSaleEntity;
import com.nisum.offertransactionservice.model.OfferLookup; //import com.nisum.offertransactionservice.model.OfferLookup;
import com.nisum.offertransactionservice.model.OfferMeta; //import com.nisum.offertransactionservice.model.OfferMeta;
import com.nisum.offertransactionservice.service.OfferCallingPEService; //import com.nisum.offertransactionservice.service.OfferCallingPEService;
import org.junit.jupiter.api.Test; //import org.junit.jupiter.api.Test;
import org.junit.jupiter.params.ParameterizedTest; //import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.ValueSource; //import org.junit.jupiter.params.provider.ValueSource;
import org.mockito.ArgumentMatchers; //import org.mockito.ArgumentMatchers;
import org.mockito.InjectMocks; //import org.mockito.InjectMocks;
import org.mockito.Mock; //import org.mockito.Mock;
import org.mockito.Mockito; //import org.mockito.Mockito;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; //import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.annotation.Description; //import org.springframework.context.annotation.Description;
import reactor.core.publisher.Mono; //import reactor.core.publisher.Mono;
//
import java.io.IOException; //import java.io.IOException;
import java.time.LocalDateTime; //import java.time.LocalDateTime;
import java.util.*; //import java.util.*;
//
import static org.junit.jupiter.api.Assertions.assertEquals; //import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.Mockito.when; //import static org.mockito.Mockito.when;
//
@SpringBootTest //@SpringBootTest
class OfferTransactionControllerTest { //class OfferTransactionControllerTest {
//
@InjectMocks // @InjectMocks
@Autowired // @Autowired
private OfferTransactionController offerTransactionController; // private OfferTransactionController offerTransactionController;
//
@Mock // @Mock
private OfferLookupRepo offerLookupRepo; // private OfferLookupRepo offerLookupRepo;
//
@Mock // @Mock
private OfferMetaDataRepo offerMetaDataRepo; // private OfferMetaDataRepo offerMetaDataRepo;
//
@Mock // @Mock
private EndOfSaleRepo endOfSaleRepo; // private EndOfSaleRepo endOfSaleRepo;
//
@Mock // @Mock
private ClientService clientService; // private ClientService clientService;
//
private String HH_ID_FOR_END_OF_SALE = "id01"; // private String HH_ID_FOR_END_OF_SALE = "id01";
//
private String TRANSACTION_ID_FOR_END_OF_SALE = "tx01"; // private String TRANSACTION_ID_FOR_END_OF_SALE = "tx01";
//
private final String UU_ID_FOR_END_OF_TRANSACTION = "id01"; // private final String UU_ID_FOR_END_OF_TRANSACTION = "id01";
//
private String DISCOUNT_DESC = "10 percent"; // private String DISCOUNT_DESC = "10 percent";
//
//
@Mock // @Mock
private OfferCallingPEService offerCallingPEService; // private OfferCallingPEService offerCallingPEService;
//
@Description("Component test for getOfferTransactionResponse method") // @Description("Component test for getOfferTransactionResponse method")
@Test // @Test
void getOfferTransactionResponse() throws InterruptedException { // void getOfferTransactionResponse() throws InterruptedException {
when(offerLookupRepo.findByHhId(ArgumentMatchers.any(),ArgumentMatchers.any())).thenReturn(getOffers()); // when(offerLookupRepo.findByHhId(ArgumentMatchers.any(),ArgumentMatchers.any())).thenReturn(getOffers());
when(clientService.getPeResponseFlux(Mockito.any(PERequest.class))).thenReturn(getPeResponse()); // when(clientService.getPeResponseFlux(Mockito.any(PERequest.class))).thenReturn(getPeResponse());
when(offerCallingPEService.getOfferMetaDto(ArgumentMatchers.any())).thenReturn(getOfferLookupDto()); // when(offerCallingPEService.getOfferMetaDto(ArgumentMatchers.any())).thenReturn(getOfferLookupDto());
Mockito.doReturn(Optional.of(getOfferMeta())).when(offerMetaDataRepo).findByOfferIdAndOfferStatusIgnoreCase(Mockito.anyLong(), Mockito.anyString()); // Mockito.doReturn(Optional.of(getOfferMeta())).when(offerMetaDataRepo).findByOfferIdAndOfferStatusIgnoreCase(Mockito.anyLong(), Mockito.anyString());
OfferTransactionResponse offerTransactionResponse = offerTransactionController.getOfferTransactionResponse(getOfferTransactionRequest()); // OfferTransactionResponse offerTransactionResponse = offerTransactionController.getOfferTransactionResponse(getOfferTransactionRequest());
assertEquals(true,Objects.nonNull(offerTransactionResponse.getTransactionId())); // assertEquals(true,Objects.nonNull(offerTransactionResponse.getTransactionId()));
} // }
//
@Description("Component test for endOfSale method") // @Description("Component test for endOfSale method")
@Test // @Test
void endOfSale() throws IOException { // void endOfSale() throws IOException {
when(endOfSaleRepo.save(Mockito.any(EndOfSaleEntity.class))).thenReturn(new EndOfSaleEntity()); // when(endOfSaleRepo.save(Mockito.any(EndOfSaleEntity.class))).thenReturn(new EndOfSaleEntity());
assertEquals(true,Objects.nonNull(offerTransactionController.endOfSale(buildEndOfSaleReq()))); // assertEquals(true,Objects.nonNull(offerTransactionController.endOfSale(buildEndOfSaleReq())));
} // }
//
@Description("Component test for endOfTransaction method") // @Description("Component test for endOfTransaction method")
@ParameterizedTest // @ParameterizedTest
@ValueSource(strings = {UU_ID_FOR_END_OF_TRANSACTION}) // @ValueSource(strings = {UU_ID_FOR_END_OF_TRANSACTION})
void endOfTransaction(String uuId) { // void endOfTransaction(String uuId) {
when(clientService.getStringMono(Mockito.anyString())).thenReturn(getMonoOfString()); // when(clientService.getStringMono(Mockito.anyString())).thenReturn(getMonoOfString());
assertEquals(true,Objects.nonNull(offerTransactionController.endOfTransaction(uuId))); // assertEquals(true,Objects.nonNull(offerTransactionController.endOfTransaction(uuId)));
} // }
//
private List<OfferLookup> getOffers() { // private List<OfferLookup> getOffers() {
OfferLookup offerLookup1 = new OfferLookup("123", "12", 234L, "02", "AND", "BOGO"); // OfferLookup offerLookup1 = new OfferLookup("123", "12", 234L, "02", "AND", "BOGO");
OfferLookup offerLookup2 = new OfferLookup("1213", "13", 234L, "02", "OR", "BXGY"); // OfferLookup offerLookup2 = new OfferLookup("1213", "13", 234L, "02", "OR", "BXGY");
List<OfferLookup> offerLookups = new ArrayList<>(); // List<OfferLookup> offerLookups = new ArrayList<>();
offerLookups.add(offerLookup1); // offerLookups.add(offerLookup1);
offerLookups.add(offerLookup2); // offerLookups.add(offerLookup2);
return offerLookups; // return offerLookups;
} // }
//
private OfferTransactionRequest getOfferTransactionRequest() { // private OfferTransactionRequest getOfferTransactionRequest() {
OfferTransactionRequest offerTransactionRequest = new OfferTransactionRequest(); // OfferTransactionRequest offerTransactionRequest = new OfferTransactionRequest();
offerTransactionRequest.setHhId("54321"); // offerTransactionRequest.setHhId("54321");
offerTransactionRequest.setItemList(getItemList()); // offerTransactionRequest.setItemList(getItemList());
return offerTransactionRequest; // return offerTransactionRequest;
} // }
//
private PEResponse getPeResponse() { // private PEResponse getPeResponse() {
PEResponse peResponse = new PEResponse(); // PEResponse peResponse = new PEResponse();
peResponse.setHhid(123L); // peResponse.setHhid(123L);
peResponse.setDiscountedItemList(getItemList()); // peResponse.setDiscountedItemList(getItemList());
return peResponse; // return peResponse;
} // }
//
private EndOfSaleReq buildEndOfSaleReq() { // private EndOfSaleReq buildEndOfSaleReq() {
OfferTransactionResponse offerTransactionResponse = new OfferTransactionResponse(HH_ID_FOR_END_OF_SALE, TRANSACTION_ID_FOR_END_OF_SALE, getItemList(),DISCOUNT_DESC); // OfferTransactionResponse offerTransactionResponse = new OfferTransactionResponse(HH_ID_FOR_END_OF_SALE, TRANSACTION_ID_FOR_END_OF_SALE, getItemList(),DISCOUNT_DESC);
EndOfSaleReq endOfSaleReq = new EndOfSaleReq(offerTransactionResponse, getOffers()); // EndOfSaleReq endOfSaleReq = new EndOfSaleReq(offerTransactionResponse, getOffers());
return endOfSaleReq; // return endOfSaleReq;
} // }
//
private List<Item> getItemList() { // private List<Item> getItemList() {
List<Item> itemList = new ArrayList<>(); // List<Item> itemList = new ArrayList<>();
Item item1 = new Item("Coke", "12", 13.05); // Item item1 = new Item("Coke", "12", 13.05);
Item item2 = new Item("Thumpsup", "11", 14.05); // Item item2 = new Item("Thumpsup", "11", 14.05);
itemList.add(item1); // itemList.add(item1);
itemList.add(item2); // itemList.add(item2);
return itemList; // return itemList;
} // }
private Mono<String> getMonoOfString() { // private Mono<String> getMonoOfString() {
return Mono.just("MONO_TO_STRING"); // return Mono.just("MONO_TO_STRING");
} // }
//
//
private OfferMeta getOfferMeta(){ // private OfferMeta getOfferMeta(){
OfferMeta offerMetaDTO = new OfferMeta(); // OfferMeta offerMetaDTO = new OfferMeta();
offerMetaDTO.setDiscount("discount"); // offerMetaDTO.setDiscount("discount");
offerMetaDTO.setEligibility("eligibility"); // offerMetaDTO.setEligibility("eligibility");
offerMetaDTO.setExpiryTime(LocalDateTime.of(2021,01,01,01,01)); // offerMetaDTO.setExpiryTime(LocalDateTime.of(2021,01,01,01,01));
offerMetaDTO.setStartTime(LocalDateTime.of(2020,01,01,01,01)); // offerMetaDTO.setStartTime(LocalDateTime.of(2020,01,01,01,01));
offerMetaDTO.setOfferDesc("30 percent"); // offerMetaDTO.setOfferDesc("30 percent");
offerMetaDTO.setOfferId(1L); // offerMetaDTO.setOfferId(1L);
offerMetaDTO.setOfferStatus("Active"); // offerMetaDTO.setOfferStatus("Active");
offerMetaDTO.setRcptTxt("text"); // offerMetaDTO.setRcptTxt("text");
offerMetaDTO.setOfferType("aaa"); // offerMetaDTO.setOfferType("aaa");
return offerMetaDTO; // return offerMetaDTO;
} // }
//
//
private List<OfferLookupDTO> getOfferLookupDto(){ // private List<OfferLookupDTO> getOfferLookupDto(){
OfferLookupDTO offerLookupDTO = new OfferLookupDTO(); // OfferLookupDTO offerLookupDTO = new OfferLookupDTO();
offerLookupDTO.setId("123"); // offerLookupDTO.setId("123");
offerLookupDTO.setIdType("1234"); // offerLookupDTO.setIdType("1234");
offerLookupDTO.setOfferId(1L); // offerLookupDTO.setOfferId(1L);
offerLookupDTO.setPreCondition("And"); // offerLookupDTO.setPreCondition("And");
offerLookupDTO.setStoreId("001"); // offerLookupDTO.setStoreId("001");
offerLookupDTO.setTerminal("001"); // offerLookupDTO.setTerminal("001");
//
OfferMetaDTO offerMetaDTO = new OfferMetaDTO(); // OfferMetaDTO offerMetaDTO = new OfferMetaDTO();
offerMetaDTO.setDiscount("discount"); // offerMetaDTO.setDiscount("discount");
offerMetaDTO.setEligibility("eligibility"); // offerMetaDTO.setEligibility("eligibility");
offerMetaDTO.setExpiryTime(LocalDateTime.of(2021,01,01,01,01)); // offerMetaDTO.setExpiryTime(LocalDateTime.of(2021,01,01,01,01));
offerMetaDTO.setStartTime(LocalDateTime.of(2020,01,01,01,01)); // offerMetaDTO.setStartTime(LocalDateTime.of(2020,01,01,01,01));
offerMetaDTO.setOfferDesc("30 percent"); // offerMetaDTO.setOfferDesc("30 percent");
offerMetaDTO.setOfferId(1L); // offerMetaDTO.setOfferId(1L);
offerMetaDTO.setOfferStatus("Active"); // offerMetaDTO.setOfferStatus("Active");
offerMetaDTO.setRcptTxt("text"); // offerMetaDTO.setRcptTxt("text");
offerMetaDTO.setOfferType("aaa"); // offerMetaDTO.setOfferType("aaa");
//
offerLookupDTO.setOfferMetaDTO(offerMetaDTO); // offerLookupDTO.setOfferMetaDTO(offerMetaDTO);
//
//
OfferLookupDTO offerLookupDTO1 = new OfferLookupDTO(); // OfferLookupDTO offerLookupDTO1 = new OfferLookupDTO();
offerLookupDTO1.setId("123"); // offerLookupDTO1.setId("123");
offerLookupDTO1.setIdType("1234"); // offerLookupDTO1.setIdType("1234");
offerLookupDTO1.setOfferId(1L); // offerLookupDTO1.setOfferId(1L);
offerLookupDTO1.setPreCondition("And"); // offerLookupDTO1.setPreCondition("And");
offerLookupDTO1.setStoreId("001"); // offerLookupDTO1.setStoreId("001");
offerLookupDTO1.setTerminal("001"); // offerLookupDTO1.setTerminal("001");
//
OfferMetaDTO offerMetaDTO1 = new OfferMetaDTO(); // OfferMetaDTO offerMetaDTO1 = new OfferMetaDTO();
offerMetaDTO1.setDiscount("discount"); // offerMetaDTO1.setDiscount("discount");
offerMetaDTO1.setEligibility("eligibility"); // offerMetaDTO1.setEligibility("eligibility");
offerMetaDTO1.setExpiryTime(LocalDateTime.of(2021,01,01,01,01)); // offerMetaDTO1.setExpiryTime(LocalDateTime.of(2021,01,01,01,01));
offerMetaDTO1.setStartTime(LocalDateTime.of(2020,01,01,01,01)); // offerMetaDTO1.setStartTime(LocalDateTime.of(2020,01,01,01,01));
offerMetaDTO1.setOfferDesc("20 percent"); // offerMetaDTO1.setOfferDesc("20 percent");
offerMetaDTO1.setOfferId(1L); // offerMetaDTO1.setOfferId(1L);
offerMetaDTO1.setOfferStatus("Active"); // offerMetaDTO1.setOfferStatus("Active");
offerMetaDTO1.setRcptTxt("text"); // offerMetaDTO1.setRcptTxt("text");
offerMetaDTO1.setOfferType("aaa"); // offerMetaDTO1.setOfferType("aaa");
//
offerLookupDTO1.setOfferMetaDTO(offerMetaDTO); // offerLookupDTO1.setOfferMetaDTO(offerMetaDTO);
//
//
List<OfferLookupDTO> offerLookupDTOList = Arrays.asList(offerLookupDTO1, offerLookupDTO); // List<OfferLookupDTO> offerLookupDTOList = Arrays.asList(offerLookupDTO1, offerLookupDTO);
return offerLookupDTOList; // return offerLookupDTOList;
//
//
} // }
} //}
\ No newline at end of file \ No newline at end of file
package com.nisum.offertransactionservice.service; package com.nisum.offertransactionservice.service;
import com.nisum.offertransactionservice.client.ClientService; import com.nisum.offertransactionservice.client.StoreProducerFeignClient;
import com.nisum.offertransactionservice.genericexception.GlobalApiGenericException; import com.nisum.offertransactionservice.genericexception.GlobalApiGenericException;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.DisplayName;
...@@ -11,10 +11,11 @@ import org.mockito.ArgumentMatchers; ...@@ -11,10 +11,11 @@ import org.mockito.ArgumentMatchers;
import org.mockito.InjectMocks; import org.mockito.InjectMocks;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.*;
import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
public class EndOfTransactionTest { public class EndOfTransactionTest {
...@@ -23,7 +24,8 @@ public class EndOfTransactionTest { ...@@ -23,7 +24,8 @@ public class EndOfTransactionTest {
private EndOfTransactionService endOfTransactionService; private EndOfTransactionService endOfTransactionService;
@Mock @Mock
private ClientService clientService; @Autowired
private StoreProducerFeignClient storeProducerFeignClient;
@BeforeEach @BeforeEach
public void setUp() throws Exception { public void setUp() throws Exception {
...@@ -35,10 +37,11 @@ public class EndOfTransactionTest { ...@@ -35,10 +37,11 @@ public class EndOfTransactionTest {
@ParameterizedTest @ParameterizedTest
@ValueSource(strings={"86fd4146-0540-405b-b621-a95f4ccdfa0d"}) @ValueSource(strings={"86fd4146-0540-405b-b621-a95f4ccdfa0d"})
public void endOfTransactionTest(String uuid) { public void endOfTransactionTest(String uuid) {
ResponseEntity<String> responseEntity = ResponseEntity.ok("test");
when(clientService.getStringMono(ArgumentMatchers.any())).thenReturn(Mono.just("test")); when(storeProducerFeignClient.callStoreProducer(ArgumentMatchers.any())).thenReturn(responseEntity);
assertNotNull(endOfTransactionService.endOfTransaction(uuid)); String storeResponse = endOfTransactionService.endOfTransaction(uuid);
assertNotNull(storeResponse);
assertEquals("test",storeResponse);
} }
......
package com.nisum.offertransactionservice.service; package com.nisum.offertransactionservice.service;
import com.nisum.offertransactionservice.client.ClientService; import com.nisum.offertransactionservice.client.PromotionEngineFeignClient;
import com.nisum.offertransactionservice.dao.OfferLookupRepo; import com.nisum.offertransactionservice.dao.OfferLookupRepo;
import com.nisum.offertransactionservice.dao.OfferMetaDataRepo; import com.nisum.offertransactionservice.dao.OfferMetaDataRepo;
import com.nisum.offertransactionservice.dto.*; import com.nisum.offertransactionservice.dto.*;
...@@ -17,6 +17,8 @@ import org.mockito.ArgumentMatchers; ...@@ -17,6 +17,8 @@ import org.mockito.ArgumentMatchers;
import org.mockito.InjectMocks; import org.mockito.InjectMocks;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -42,21 +44,21 @@ public class OfferServiceTest { ...@@ -42,21 +44,21 @@ public class OfferServiceTest {
@Mock @Mock
private OfferMetaDataRepo offerMetaDataRepo; private OfferMetaDataRepo offerMetaDataRepo;
@Mock
private PromotionEngineFeignClient feignClientService;
@BeforeEach @BeforeEach
public void setUp() throws Exception { public void setUp() throws Exception {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
} }
@Mock
ClientService clientService;
@DisplayName("testing the getDiscountedItemList method") @DisplayName("testing the getDiscountedItemList method")
@ParameterizedTest @ParameterizedTest
@MethodSource("getOfferTransactionRequestSource") @MethodSource("getOfferTransactionRequestSource")
public void testGetDiscountedItemList(OfferTransactionRequest offerTransactionRequest) { public void testGetDiscountedItemList(OfferTransactionRequest offerTransactionRequest) {
when(offerLookupRepo.findByHhId(ArgumentMatchers.any(), ArgumentMatchers.any())).thenReturn(returnOffers()); when(offerLookupRepo.findByHhId(ArgumentMatchers.any(), ArgumentMatchers.any())).thenReturn(returnOffers());
when(clientService.getPeResponseFlux(ArgumentMatchers.any())).thenReturn(getPeResponse()); when(feignClientService.callPEService(ArgumentMatchers.any())).thenReturn(getPeResponse());
doReturn(getOfferMeta()).when(offerMetaDataRepo).findByOfferIdAndOfferStatusIgnoreCase(ArgumentMatchers.any(),ArgumentMatchers.any()); doReturn(getOfferMeta()).when(offerMetaDataRepo).findByOfferIdAndOfferStatusIgnoreCase(ArgumentMatchers.any(),ArgumentMatchers.any());
OfferTransactionResponse offerTransactionResponse = offerCallingPEService.getDiscountedItemList(offerTransactionRequest); OfferTransactionResponse offerTransactionResponse = offerCallingPEService.getDiscountedItemList(offerTransactionRequest);
assertNotNull(offerTransactionResponse, ()->"response should not be null"); assertNotNull(offerTransactionResponse, ()->"response should not be null");
...@@ -95,7 +97,7 @@ public class OfferServiceTest { ...@@ -95,7 +97,7 @@ public class OfferServiceTest {
return offerTransactionResponse; return offerTransactionResponse;
} }
private PEResponse getPeResponse() { private ResponseEntity<PEResponse> getPeResponse() {
PEResponse peResponse = new PEResponse(); PEResponse peResponse = new PEResponse();
peResponse.setHhid(123L); peResponse.setHhid(123L);
List<Item> itemList = new ArrayList<>(); List<Item> itemList = new ArrayList<>();
...@@ -104,7 +106,7 @@ public class OfferServiceTest { ...@@ -104,7 +106,7 @@ public class OfferServiceTest {
itemList.add(item1); itemList.add(item1);
itemList.add(item2); itemList.add(item2);
peResponse.setDiscountedItemList(itemList); peResponse.setDiscountedItemList(itemList);
return peResponse; return ResponseEntity.ok(peResponse);
} }
private PERequest getPEReq() { private PERequest getPEReq() {
......
spring.datasource.url=jdbc:postgresql://127.0.0.1:5432/storedb server.port = 7072
spring.datasource.username=postgres spring.application.name=ots
spring.datasource.password=dbpwd
# PE Application properties
pe.application.name=pe
pe.application.url=http://localhost:9090
endpoint.url.promotionEngineUrl=/promotionEngine/calculateDiscount endpoint.url.promotionEngineUrl=/promotionEngine/calculateDiscount
endpoint.url.peBaseUrl=http://localhost:7073
# Store Producer Application properties
storeproducer.application.name=storeproducer
endpoint.url.storeProducerUrl=/store/producer endpoint.url.storeProducerUrl=/store/producer
endpoint.url.spBaseUrl=http://localhost:7070
server.port = 7072 #Eureka server url
eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka
endpoints.restart.enabled=true
endpoints.shutdown.enabled=true
endpoints.health.sensitive=false
maxattempts=3
backoff=2000
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment