Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OTSWithFeign
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Bhaskar Katakam
OTSWithFeign
Commits
3c3094d2
Commit
3c3094d2
authored
Apr 03, 2020
by
sgandhi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
4ea20446
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
117 additions
and
9 deletions
+117
-9
OfferDao.java
.../java/com/nisum/offertransactionservice/dao/OfferDao.java
+3
-4
OfferDaoTest.java
...a/com/nisum/offertransactionservice/dao/OfferDaoTest.java
+3
-5
OfferServiceTest.java
...sum/offertransactionservice/service/OfferServiceTest.java
+111
-0
No files found.
src/main/java/com/nisum/offertransactionservice/dao/OfferDao.java
View file @
3c3094d2
...
@@ -13,17 +13,16 @@ import org.springframework.web.client.*;
...
@@ -13,17 +13,16 @@ import org.springframework.web.client.*;
@Component
@Component
@PropertySource
(
"classpath:application.properties"
)
@PropertySource
(
"classpath:application.properties"
)
public
class
OfferDao
{
public
class
OfferDao
{
@Autowired
@Autowired
private
RestTemplate
restTemplate
;
private
RestTemplate
restTemplate
;
/*
Value("${promotion.engine.calculate.discount.url}")
@
Value
(
"${promotion.engine.calculate.discount.url}"
)
private String promotionEngineUrl ;
*/
private
String
promotionEngineUrl
;
public
PEResponse
callPE
(
PERequest
peRequest
)
{
public
PEResponse
callPE
(
PERequest
peRequest
)
{
ResponseEntity
<
PEResponse
>
peResponse
=
restTemplate
.
postForEntity
(
"http://localhost:8081
/promotionEngine/calculateDiscount"
,
peRequest
,
PEResponse
.
class
);
ResponseEntity
<
PEResponse
>
peResponse
=
restTemplate
.
postForEntity
(
"http://localhost:8081
"
+
promotionEngineUrl
,
peRequest
,
PEResponse
.
class
);
return
peResponse
.
getBody
();
return
peResponse
.
getBody
();
}
}
}
}
src/test/java/com/nisum/offertransactionservice/dao/OfferDaoTest.java
View file @
3c3094d2
...
@@ -30,7 +30,6 @@ import java.util.ArrayList;
...
@@ -30,7 +30,6 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.List
;
@RunWith
(
MockitoJUnitRunner
.
class
)
@RunWith
(
MockitoJUnitRunner
.
class
)
@PropertySource
(
"classpath:application.properties"
)
@PropertySource
(
"classpath:application.properties"
)
public
class
OfferDaoTest
{
public
class
OfferDaoTest
{
@Mock
@Mock
...
@@ -44,16 +43,15 @@ public class OfferDaoTest {
...
@@ -44,16 +43,15 @@ public class OfferDaoTest {
MockitoAnnotations
.
initMocks
(
this
);
MockitoAnnotations
.
initMocks
(
this
);
}
}
/*
@Value("${promotion.engine.calculate.discount.url}")
@Value
(
"${promotion.engine.calculate.discount.url}"
)
private String promotionEngineUrl ;
*/
private
String
promotionEngineUrl
;
@Test
@Test
public
void
test
(){
public
void
test
(){
Mockito
.
when
(
restTemplate
.
postForEntity
(
"http://localhost:8081
/promotionEngine/calculateDiscount"
,
getPeRequest
(),
PEResponse
.
class
))
Mockito
.
when
(
restTemplate
.
postForEntity
(
"http://localhost:8081
"
+
promotionEngineUrl
,
getPeRequest
(),
PEResponse
.
class
))
.
thenReturn
(
new
ResponseEntity
<
PEResponse
>(
getPeResponse
(),
HttpStatus
.
OK
));
.
thenReturn
(
new
ResponseEntity
<
PEResponse
>(
getPeResponse
(),
HttpStatus
.
OK
));
PEResponse
peResponse
=
offerDao
.
callPE
(
getPeRequest
());
PEResponse
peResponse
=
offerDao
.
callPE
(
getPeRequest
());
Assert
.
assertEquals
(
peResponse
,
getPeResponse
());
Assert
.
assertEquals
(
peResponse
,
getPeResponse
());
}
}
...
...
src/test/java/com/nisum/offertransactionservice/service/OfferServiceTest.java
0 → 100644
View file @
3c3094d2
package
com
.
nisum
.
offertransactionservice
.
service
;
import
com.nisum.offertransactionservice.converter.OfferConverter
;
import
com.nisum.offertransactionservice.converter.PEResponseToOfferTransactionResConverter
;
import
com.nisum.offertransactionservice.dao.OfferDao
;
import
com.nisum.offertransactionservice.dao.OfferLookupRepo
;
import
com.nisum.offertransactionservice.model.*
;
import
org.junit.Assert
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.mockito.InjectMocks
;
import
org.mockito.Mock
;
import
org.mockito.Mockito
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.test.context.junit4.SpringRunner
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@RunWith
(
SpringRunner
.
class
)
public
class
OfferServiceTest
{
@Mock
private
OfferConverter
offerConverter
;
@Mock
private
OfferLookupRepo
offerLookupRepo
;
@Mock
private
OfferDao
offerDao
;
@Mock
private
PEResponseToOfferTransactionResConverter
peResponseToOfferTransactionResConverter
;
@InjectMocks
private
OfferCallingPEService
offerCallingPEService
=
new
OfferCallingPEService
();
@Test
public
void
serviceTest
()
{
OfferTransactionRequest
offerTransactionRequest
=
getOfferTransactionRequest
();
Mockito
.
when
(
offerLookupRepo
.
findAll
()).
thenReturn
(
returnOffers
());
Mockito
.
when
(
offerConverter
.
apply
(
getOfferTransactionRequest
())).
thenReturn
(
getPEReq
());
Mockito
.
when
(
offerDao
.
callPE
(
getPEReq
())).
thenReturn
(
getPeResponse
());
Mockito
.
when
(
peResponseToOfferTransactionResConverter
.
apply
(
getPeResponse
())).
thenReturn
(
retOfferTransRes
());
OfferTransactionResponse
offerTransactionResponse
=
offerCallingPEService
.
getDiscountedItemList
(
offerTransactionRequest
);
Assert
.
assertEquals
(
offerTransactionResponse
,
retOfferTransRes
());
}
private
OfferTransactionResponse
retOfferTransRes
()
{
OfferTransactionResponse
offerTransactionResponse
=
new
OfferTransactionResponse
();
offerTransactionResponse
.
setHhid
(
"123"
);
List
<
Item
>
itemList
=
new
ArrayList
<>();
Item
item1
=
new
Item
(
"Coke"
,
"12"
,
6.05
,
"cmsCoupons"
);
Item
item2
=
new
Item
(
"Thumpsup"
,
"11"
,
12.32
,
"cmsCoupons"
);
itemList
.
add
(
item1
);
itemList
.
add
(
item2
);
offerTransactionResponse
.
setDiscountedItemList
(
itemList
);
return
offerTransactionResponse
;
}
private
PEResponse
getPeResponse
(){
PEResponse
peResponse
=
new
PEResponse
();
peResponse
.
setHhid
(
"123"
);
List
<
Item
>
itemList
=
new
ArrayList
<>();
Item
item1
=
new
Item
(
"Coke"
,
"12"
,
6.05
,
"cmsCoupons"
);
Item
item2
=
new
Item
(
"Thumpsup"
,
"11"
,
12.32
,
"cmsCoupons"
);
itemList
.
add
(
item1
);
itemList
.
add
(
item2
);
peResponse
.
setDiscountedItemList
(
itemList
);
return
peResponse
;
}
private
PERequest
getPEReq
()
{
PERequest
peRequest
=
new
PERequest
();
peRequest
.
setHhId
(
"123"
);
List
<
Item
>
itemList
=
new
ArrayList
<>();
Item
item1
=
new
Item
(
"Coke"
,
"12"
,
13.05
,
"cmsCoupons"
);
Item
item2
=
new
Item
(
"Thumpsup"
,
"11"
,
14.05
,
"cmsCoupons"
);
itemList
.
add
(
item1
);
itemList
.
add
(
item2
);
peRequest
.
setItemList
(
itemList
);
/*OfferLookup offerLookup1 = new OfferLookup("1","12","234","02","AND","BOGO");
OfferLookup offerLookup2 = new OfferLookup("2","13","234","02","OR","BXGY");
List<OfferLookup> offerLookups = new ArrayList<>();
offerLookups.add(offerLookup1);
offerLookups.add(offerLookup2);
peRequest.setEligibleOffers(offerLookups);*/
return
peRequest
;
}
private
OfferTransactionRequest
getOfferTransactionRequest
()
{
OfferTransactionRequest
offerTransactionRequest
=
new
OfferTransactionRequest
();
offerTransactionRequest
.
setHhId
(
"123"
);
List
<
Item
>
itemList
=
new
ArrayList
<>();
Item
item1
=
new
Item
(
"Coke"
,
"12"
,
13.05
,
"cmsCoupons"
);
Item
item2
=
new
Item
(
"Thumpsup"
,
"11"
,
14.05
,
"cmsCoupons"
);
itemList
.
add
(
item1
);
itemList
.
add
(
item2
);
offerTransactionRequest
.
setItemList
(
itemList
);
return
offerTransactionRequest
;
}
public
Iterable
<
OfferLookup
>
returnOffers
()
{
OfferLookup
offerLookup1
=
new
OfferLookup
(
"1"
,
"12"
,
"234"
,
"02"
,
"AND"
,
"BOGO"
);
OfferLookup
offerLookup2
=
new
OfferLookup
(
"2"
,
"13"
,
"234"
,
"02"
,
"OR"
,
"BXGY"
);
List
<
OfferLookup
>
offerLookups
=
new
ArrayList
<>();
offerLookups
.
add
(
offerLookup1
);
offerLookups
.
add
(
offerLookup2
);
return
offerLookups
.
stream
().
collect
(
Collectors
.
toList
());
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment