Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
spring-boot-kafka-producer
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
Uday Singh
spring-boot-kafka-producer
Commits
fde0dbec
Commit
fde0dbec
authored
May 04, 2020
by
uday
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
written the component test case for producer
parent
7f355b96
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
168 additions
and
21 deletions
+168
-21
BoToDtoMapper.java
.../safeway/epe/offersdataproducer/mapper/BoToDtoMapper.java
+0
-8
OffersDataProducer.java
...y/epe/offersdataproducer/producer/OffersDataProducer.java
+4
-3
OffersDataDTO.json
...afeway/epe/offersdataproducer/resource/OffersDataDTO.json
+56
-0
OffersDataProducerResourceComponentTest.java
...cer/resource/OffersDataProducerResourceComponentTest.java
+108
-10
No files found.
src/main/java/com/safeway/epe/offersdataproducer/mapper/BoToDtoMapper.java
View file @
fde0dbec
...
@@ -11,29 +11,21 @@ import org.mapstruct.Mapping;
...
@@ -11,29 +11,21 @@ import org.mapstruct.Mapping;
public
interface
BoToDtoMapper
{
public
interface
BoToDtoMapper
{
@Mapping
(
target
=
"offersDTO"
,
source
=
"offersBO"
)
@Mapping
(
target
=
"offersDTO"
,
source
=
"offersBO"
)
OffersDataDTO
map
(
OffersDataBO
offersDataBO
);
OffersDataDTO
map
(
OffersDataBO
offersDataBO
);
@Mapping
(
target
=
"rulesDTO"
,
source
=
"rulesBO"
)
@Mapping
(
target
=
"rulesDTO"
,
source
=
"rulesBO"
)
@Mapping
(
target
=
"infoDTO"
,
source
=
"infoBO"
)
@Mapping
(
target
=
"infoDTO"
,
source
=
"infoBO"
)
OffersDTO
map
(
OffersBO
offersBO
);
OffersDTO
map
(
OffersBO
offersBO
);
@Mapping
(
target
=
"idDTO"
,
source
=
"idBO"
)
@Mapping
(
target
=
"idDTO"
,
source
=
"idBO"
)
@Mapping
(
target
=
"terminalsDTO"
,
source
=
"terminalsBO"
)
@Mapping
(
target
=
"terminalsDTO"
,
source
=
"terminalsBO"
)
InfoDTO
map
(
InfoBO
infoBO
);
InfoDTO
map
(
InfoBO
infoBO
);
IdDTO
map
(
IdBO
idBO
);
IdDTO
map
(
IdBO
idBO
);
@Mapping
(
target
=
"benefitDTO"
,
source
=
"benefitBO"
)
@Mapping
(
target
=
"benefitDTO"
,
source
=
"benefitBO"
)
RulesDTO
map
(
RulesBO
rulesBO
);
RulesDTO
map
(
RulesBO
rulesBO
);
@Mapping
(
target
=
"pointsDTO"
,
source
=
"pointsBO"
)
@Mapping
(
target
=
"pointsDTO"
,
source
=
"pointsBO"
)
@Mapping
(
target
=
"discountDTO"
,
source
=
"discountBO"
)
@Mapping
(
target
=
"discountDTO"
,
source
=
"discountBO"
)
BenefitDTO
map
(
BenefitBO
BenefitBO
);
BenefitDTO
map
(
BenefitBO
BenefitBO
);
@Mapping
(
target
=
"discountTierDTO"
,
source
=
"discountTierBO"
)
@Mapping
(
target
=
"discountTierDTO"
,
source
=
"discountTierBO"
)
DiscountDTO
map
(
DiscountBO
DiscountBO
);
DiscountDTO
map
(
DiscountBO
DiscountBO
);
DiscountTierDTO
map
(
DiscountTierBO
discountTierBO
);
DiscountTierDTO
map
(
DiscountTierBO
discountTierBO
);
PointsDTO
map
(
PointsBO
pointsBO
);
PointsDTO
map
(
PointsBO
pointsBO
);
}
}
src/main/java/com/safeway/epe/offersdataproducer/producer/OffersDataProducer.java
View file @
fde0dbec
...
@@ -20,9 +20,10 @@ public class OffersDataProducer {
...
@@ -20,9 +20,10 @@ public class OffersDataProducer {
@Autowired
@Autowired
private
ObjectMapper
objectMapper
;
private
ObjectMapper
objectMapper
;
public
ListenableFuture
<
SendResult
<
String
,
String
>>
sendMessage
(
OffersDataDTO
offersDataDTO
)
throws
JsonProcessingException
{
public
ListenableFuture
<
SendResult
<
String
,
String
>>
sendMessage
(
OffersDataDTO
offersDataDTO
)
throws
JsonProcessingException
{
logger
.
info
(
String
.
format
(
"$$ -> Producing message --> %s"
,
offersDataDTO
));
logger
.
info
(
"Start :: OffersDataProducer.sendMessage"
);
String
offersDataBOResp
=
objectMapper
.
writeValueAsString
(
offersDataDTO
);
String
offersDataDTOResp
=
objectMapper
.
writeValueAsString
(
offersDataDTO
);
ListenableFuture
<
SendResult
<
String
,
String
>>
message
=
kafkaTemplate
.
send
(
AppConfigs
.
TOPIC_NAME
,
offersDataBOResp
);
ListenableFuture
<
SendResult
<
String
,
String
>>
message
=
kafkaTemplate
.
send
(
AppConfigs
.
TOPIC_NAME
,
offersDataDTOResp
);
logger
.
info
(
"End :: OffersDataProducer.sendMessage"
);
return
message
;
return
message
;
}
}
}
}
src/test/java/com/safeway/epe/offersdataproducer/resource/OffersDataDTO.json
0 → 100644
View file @
fde0dbec
{
"offerId"
:
135918555
,
"offersDTO"
:
[
{
"infoDTO"
:
{
"offerId"
:
135918555
,
"idDTO"
:
{
"offerId"
:
135918555
,
"manufacturerId"
:
"MMM"
},
"offerProgramCode"
:
"SC"
,
"terminalsDTO"
:
[
"Groceryworks (Safeway.com)"
,
"Smart Cart (QVS Virtual Terminals)"
,
"Bakery"
]
},
"rulesDTO"
:
{
"offerId"
:
135918555
,
"startDate"
:
"2019-07-27T07:00:00.000+00:00"
,
"endDate"
:
"2021-02-27T06:59:58.000+00:00"
,
"benefitDTO"
:
{
"benefitValueType"
:
"A"
,
"discountDTO"
:
[
{
"allowNegative"
:
false
,
"flexNegative"
:
false
,
"discountTierDTO"
:
[
{
"amount"
:
6.99
,
"upTo"
:
"3"
,
"itemLimit"
:
5
,
"weightLimit"
:
2
}
]
}
],
"pointsDTO"
:
[
{
"generalPoints"
:
5
,
"loyaltyPoints"
:
250
}
]
}
}
}
]
}
\ No newline at end of file
src/test/java/com/safeway/epe/offersdataproducer/resource/OffersDataProducerResourceComponentTest.java
View file @
fde0dbec
...
@@ -9,10 +9,16 @@ import com.safeway.epe.offersdataproducer.dtomodel.*;
...
@@ -9,10 +9,16 @@ import com.safeway.epe.offersdataproducer.dtomodel.*;
import
org.apache.kafka.clients.producer.ProducerRecord
;
import
org.apache.kafka.clients.producer.ProducerRecord
;
import
org.apache.kafka.clients.producer.RecordMetadata
;
import
org.apache.kafka.clients.producer.RecordMetadata
;
import
org.apache.kafka.common.TopicPartition
;
import
org.apache.kafka.common.TopicPartition
;
import
org.json.JSONException
;
import
org.junit.Test
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.junit.runner.RunWith
;
import
org.mockito.ArgumentCaptor
;
import
org.mockito.ArgumentMatchers
;
import
org.mockito.Mockito
;
import
org.mockito.Mockito
;
import
org.skyscreamer.jsonassert.Customization
;
import
org.skyscreamer.jsonassert.JSONAssert
;
import
org.skyscreamer.jsonassert.JSONAssert
;
import
org.skyscreamer.jsonassert.JSONCompareMode
;
import
org.skyscreamer.jsonassert.comparator.CustomComparator
;
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.boot.test.mock.mockito.MockBean
;
import
org.springframework.boot.test.mock.mockito.MockBean
;
...
@@ -25,12 +31,16 @@ import org.springframework.test.context.junit4.SpringRunner;
...
@@ -25,12 +31,16 @@ import org.springframework.test.context.junit4.SpringRunner;
import
org.springframework.util.concurrent.ListenableFuture
;
import
org.springframework.util.concurrent.ListenableFuture
;
import
org.springframework.util.concurrent.SettableListenableFuture
;
import
org.springframework.util.concurrent.SettableListenableFuture
;
import
java.io.BufferedReader
;
import
java.io.FileReader
;
import
java.io.IOException
;
import
java.util.concurrent.ExecutionException
;
import
java.util.concurrent.ExecutionException
;
@RunWith
(
SpringRunner
.
class
)
@RunWith
(
SpringRunner
.
class
)
@SpringBootTest
(
webEnvironment
=
SpringBootTest
.
WebEnvironment
.
RANDOM_PORT
)
@SpringBootTest
(
webEnvironment
=
SpringBootTest
.
WebEnvironment
.
RANDOM_PORT
)
@ActiveProfiles
(
"test"
)
@ActiveProfiles
(
"test"
)
public
class
OffersDataProducerResourceComponentTest
{
public
class
OffersDataProducerResourceComponentTest
{
private
static
final
String
FILE_PATH
=
"src/test/java/com/safeway/epe/offersdataproducer/resource/"
;
@Autowired
@Autowired
private
OffersDataProducerResource
offersDataProducerResource
;
private
OffersDataProducerResource
offersDataProducerResource
;
@MockBean
@MockBean
...
@@ -42,9 +52,9 @@ public class OffersDataProducerResourceComponentTest {
...
@@ -42,9 +52,9 @@ public class OffersDataProducerResourceComponentTest {
OffersDataDO
offersDataDO
=
buildOffersDataDO
();
OffersDataDO
offersDataDO
=
buildOffersDataDO
();
OffersDataDTO
offersDataDTO
=
buildOffersDataDTO
();
OffersDataDTO
offersDataDTO
=
buildOffersDataDTO
();
ObjectMapper
mapper
=
new
ObjectMapper
();
ObjectMapper
mapper
=
new
ObjectMapper
();
String
excpected
=
mapper
.
writeValueAsString
(
offersDataDO
);
String
excpected
=
mapper
.
writeValueAsString
(
offersDataD
T
O
);
SettableListenableFuture
future
=
new
SettableListenableFuture
();
SettableListenableFuture
future
=
new
SettableListenableFuture
();
ProducerRecord
<
Integer
,
String
>
producerRecord
=
new
ProducerRecord
(
AppConfigs
.
TOPIC_NAME
,
null
,
offersDataDO
);
ProducerRecord
<
Integer
,
String
>
producerRecord
=
new
ProducerRecord
(
AppConfigs
.
TOPIC_NAME
,
null
,
offersDataD
T
O
);
RecordMetadata
recordMetadata
=
new
RecordMetadata
(
new
TopicPartition
(
AppConfigs
.
TOPIC_NAME
,
0
),
RecordMetadata
recordMetadata
=
new
RecordMetadata
(
new
TopicPartition
(
AppConfigs
.
TOPIC_NAME
,
0
),
8
,
1
,
342
,
System
.
currentTimeMillis
(),
-
1
,
581
);
8
,
1
,
342
,
System
.
currentTimeMillis
(),
-
1
,
581
);
SendResult
<
Integer
,
String
>
sendResult
=
new
SendResult
<
Integer
,
String
>(
producerRecord
,
recordMetadata
);
SendResult
<
Integer
,
String
>
sendResult
=
new
SendResult
<
Integer
,
String
>(
producerRecord
,
recordMetadata
);
...
@@ -54,6 +64,94 @@ public class OffersDataProducerResourceComponentTest {
...
@@ -54,6 +64,94 @@ public class OffersDataProducerResourceComponentTest {
String
actual
=
mapper
.
writeValueAsString
(
result
.
getBody
().
get
().
getProducerRecord
().
value
());
String
actual
=
mapper
.
writeValueAsString
(
result
.
getBody
().
get
().
getProducerRecord
().
value
());
JSONAssert
.
assertEquals
(
excpected
,
actual
,
false
);
JSONAssert
.
assertEquals
(
excpected
,
actual
,
false
);
}
}
@Test
public
void
publishOfferEventWithArgumentCatureTest
()
throws
JsonProcessingException
,
ExecutionException
,
InterruptedException
{
ObjectMapper
mapper
=
new
ObjectMapper
();
OffersDataDO
offersDataDO
=
buildOffersDataDO
();
OffersDataDTO
offersDataDTO
=
buildOffersDataDTO
();
SettableListenableFuture
future
=
new
SettableListenableFuture
();
ProducerRecord
<
Integer
,
String
>
producerRecord
=
new
ProducerRecord
(
AppConfigs
.
TOPIC_NAME
,
null
,
offersDataDTO
);
RecordMetadata
recordMetadata
=
new
RecordMetadata
(
new
TopicPartition
(
AppConfigs
.
TOPIC_NAME
,
0
),
8
,
1
,
342
,
System
.
currentTimeMillis
(),
-
1
,
581
);
SendResult
<
Integer
,
String
>
sendResult
=
new
SendResult
<
Integer
,
String
>(
producerRecord
,
recordMetadata
);
future
.
set
(
sendResult
);
ArgumentCaptor
<
OffersDataDTO
>
serviceRequestArgumentCaptor
=
ArgumentCaptor
.
forClass
(
OffersDataDTO
.
class
);
Mockito
.
when
(
kafkaTemplate
.
send
(
ArgumentMatchers
.
any
(),
serviceRequestArgumentCaptor
.
capture
())).
thenReturn
(
future
);
ResponseEntity
<
ListenableFuture
<
SendResult
<
String
,
String
>>>
result
=
offersDataProducerResource
.
publishOfferEvent
(
offersDataDO
);
String
actual
=
mapper
.
writeValueAsString
(
result
.
getBody
().
get
().
getProducerRecord
().
value
());
validateRequest
(
serviceRequestArgumentCaptor
,
"OffersDataDTO.json"
);
validteResponse
(
actual
,
"OffersDataDTO.json"
);
}
void
validteResponse
(
String
actualResponse
,
String
fileName
)
{
String
expectedResponse
=
retrieveExpectedResult
(
fileName
);
try
{
JSONAssert
.
assertEquals
(
expectedResponse
,
actualResponse
,
new
CustomComparator
(
JSONCompareMode
.
STRICT
,
new
Customization
(
"offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
))
,
new
Customization
(
"offersDTO[0].infoDTO.idDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].infoDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.benefitValueType"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.discountDTO[0].allowNegative"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.discountDTO[0].discountTierDTO[0].upTo"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.discountDTO[0].flexNegative"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.endDate"
,(
value1
,
value2
)
->
true
),
new
Customization
(
"offersDTO[0].rulesDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.startDate"
,(
value1
,
value2
)
->
true
),
new
Customization
(
"offersDTO[0].infoDTO.idDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].infoDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.benefitValueType"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
)
)
);
}
catch
(
JSONException
e
)
{
e
.
printStackTrace
();
}
}
private
String
retrieveExpectedResult
(
String
fileName
)
{
StringBuilder
sb
=
new
StringBuilder
();
try
(
BufferedReader
br
=
new
BufferedReader
(
new
FileReader
(
FILE_PATH
+
fileName
)))
{
String
line
;
while
((
line
=
br
.
readLine
())
!=
null
)
{
sb
.
append
(
line
);
}
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
sb
.
toString
();
}
private
void
validateRequest
(
ArgumentCaptor
<
OffersDataDTO
>
argumentCaptor
,
String
fileName
)
{
String
actual
=
String
.
valueOf
(
argumentCaptor
.
getValue
());
String
expectedServiceRequest
=
retrieveExpectedResult
(
fileName
);
try
{
JSONAssert
.
assertEquals
(
expectedServiceRequest
,
actual
,
new
CustomComparator
(
JSONCompareMode
.
STRICT
,
new
Customization
(
"offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
))
,
new
Customization
(
"offersDTO[0].infoDTO.idDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].infoDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.benefitValueType"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.discountDTO[0].allowNegative"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.discountDTO[0].discountTierDTO[0].upTo"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.discountDTO[0].flexNegative"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.endDate"
,(
value1
,
value2
)
->
true
),
new
Customization
(
"offersDTO[0].rulesDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.startDate"
,(
value1
,
value2
)
->
true
),
new
Customization
(
"offersDTO[0].infoDTO.idDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].infoDTO.offerId"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
),
new
Customization
(
"offersDTO[0].rulesDTO.benefitDTO.benefitValueType"
,(
value1
,
value2
)
->
value1
.
equals
(
value2
)
)
)
);
}
catch
(
JSONException
e
)
{
e
.
printStackTrace
();
}
}
private
OffersDataDO
buildOffersDataDO
()
{
private
OffersDataDO
buildOffersDataDO
()
{
DiscountTierDO
discountTierDO
=
DiscountTierDO
DiscountTierDO
discountTierDO
=
DiscountTierDO
.
builder
().
amount
(
6.99f
).
upTo
(
"3"
)
.
builder
().
amount
(
6.99f
).
upTo
(
"3"
)
...
@@ -66,16 +164,16 @@ public class OffersDataProducerResourceComponentTest {
...
@@ -66,16 +164,16 @@ public class OffersDataProducerResourceComponentTest {
.
builder
().
discountDO
(
Lists
.
newArrayList
(
discountDO
))
.
builder
().
discountDO
(
Lists
.
newArrayList
(
discountDO
))
.
pointsDO
(
Lists
.
newArrayList
(
pointsDO
)).
benefitValueType
(
"A"
)
.
pointsDO
(
Lists
.
newArrayList
(
pointsDO
)).
benefitValueType
(
"A"
)
.
build
();
.
build
();
IdDO
idDO
=
IdDO
.
builder
().
manufacturerId
(
"MMM"
).
offerId
(
135918
444
).
build
();
IdDO
idDO
=
IdDO
.
builder
().
manufacturerId
(
"MMM"
).
offerId
(
135918
555
).
build
();
InfoDO
infoDO
=
InfoDO
InfoDO
infoDO
=
InfoDO
.
builder
().
offerId
(
135918
444
).
idDO
(
idDO
).
offerProgramCode
(
"SC"
)
.
builder
().
offerId
(
135918
555
).
idDO
(
idDO
).
offerProgramCode
(
"SC"
)
.
terminalsDO
(
Lists
.
newArrayList
(
"Groceryworks (Safeway.com)"
,
.
terminalsDO
(
Lists
.
newArrayList
(
"Groceryworks (Safeway.com)"
,
"Smart Cart (QVS Virtual Terminals)"
,
"Smart Cart (QVS Virtual Terminals)"
,
"Bakery"
)).
build
();
"Bakery"
)).
build
();
RulesDO
rulesDO
=
RulesDO
.
builder
().
offerId
(
135918
444
).
benefitDO
(
benefitDO
).
endDate
(
"2021-02-27T06:59:58.000+00:00"
)
RulesDO
rulesDO
=
RulesDO
.
builder
().
offerId
(
135918
555
).
benefitDO
(
benefitDO
).
endDate
(
"2021-02-27T06:59:58.000+00:00"
)
.
startDate
(
"2019-07-27T07:00:00.000+00:00"
).
build
();
.
startDate
(
"2019-07-27T07:00:00.000+00:00"
).
build
();
OffersDO
offersDO
=
OffersDO
.
builder
().
infoDO
(
infoDO
).
rulesDO
(
rulesDO
).
build
();
OffersDO
offersDO
=
OffersDO
.
builder
().
infoDO
(
infoDO
).
rulesDO
(
rulesDO
).
build
();
OffersDataDO
offersDataDO
=
OffersDataDO
.
builder
().
offerId
(
135918
444
).
offersDO
(
Lists
.
newArrayList
(
offersDO
)).
build
();
OffersDataDO
offersDataDO
=
OffersDataDO
.
builder
().
offerId
(
135918
555
).
offersDO
(
Lists
.
newArrayList
(
offersDO
)).
build
();
return
offersDataDO
;
return
offersDataDO
;
}
}
...
@@ -91,16 +189,16 @@ public class OffersDataProducerResourceComponentTest {
...
@@ -91,16 +189,16 @@ public class OffersDataProducerResourceComponentTest {
.
builder
().
discountDTO
(
Lists
.
newArrayList
(
discountDTO
))
.
builder
().
discountDTO
(
Lists
.
newArrayList
(
discountDTO
))
.
pointsDTO
(
Lists
.
newArrayList
(
pointsDTO
)).
benefitValueType
(
"A"
)
.
pointsDTO
(
Lists
.
newArrayList
(
pointsDTO
)).
benefitValueType
(
"A"
)
.
build
();
.
build
();
IdDTO
idDTO
=
IdDTO
.
builder
().
manufacturerId
(
"MMM"
).
offerId
(
135918
444
).
build
();
IdDTO
idDTO
=
IdDTO
.
builder
().
manufacturerId
(
"MMM"
).
offerId
(
135918
555
).
build
();
InfoDTO
infoDTO
=
InfoDTO
InfoDTO
infoDTO
=
InfoDTO
.
builder
().
offerId
(
135918
444
).
idDTO
(
idDTO
).
offerProgramCode
(
"SC"
)
.
builder
().
offerId
(
135918
555
).
idDTO
(
idDTO
).
offerProgramCode
(
"SC"
)
.
terminalsDTO
(
Lists
.
newArrayList
(
"Groceryworks (Safeway.com)"
,
.
terminalsDTO
(
Lists
.
newArrayList
(
"Groceryworks (Safeway.com)"
,
"Smart Cart (QVS Virtual Terminals)"
,
"Smart Cart (QVS Virtual Terminals)"
,
"Bakery"
)).
build
();
"Bakery"
)).
build
();
RulesDTO
rulesDTO
=
RulesDTO
.
builder
().
offerId
(
135918
444
).
benefitDTO
(
benefitDTO
).
endDate
(
"2021-02-27T06:59:58.000+00:00"
)
RulesDTO
rulesDTO
=
RulesDTO
.
builder
().
offerId
(
135918
555
).
benefitDTO
(
benefitDTO
).
endDate
(
"2021-02-27T06:59:58.000+00:00"
)
.
startDate
(
"2019-07-27T07:00:00.000+00:00"
).
build
();
.
startDate
(
"2019-07-27T07:00:00.000+00:00"
).
build
();
OffersDTO
offersDTO
=
OffersDTO
.
builder
().
infoDTO
(
infoDTO
).
rulesDTO
(
rulesDTO
).
build
();
OffersDTO
offersDTO
=
OffersDTO
.
builder
().
infoDTO
(
infoDTO
).
rulesDTO
(
rulesDTO
).
build
();
OffersDataDTO
offersDataDTO
=
OffersDataDTO
.
builder
().
offerId
(
135918
444
).
offersDTO
(
Lists
.
newArrayList
(
offersDTO
)).
build
();
OffersDataDTO
offersDataDTO
=
OffersDataDTO
.
builder
().
offerId
(
135918
555
).
offersDTO
(
Lists
.
newArrayList
(
offersDTO
)).
build
();
return
offersDataDTO
;
return
offersDataDTO
;
}
}
...
...
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