55import com .objectcomputing .checkins .notifications .email .MailJetFactory ;
66import com .objectcomputing .checkins .services .MailJetFactoryReplacement ;
77import com .objectcomputing .checkins .services .TestContainersSuite ;
8+ import com .objectcomputing .checkins .services .feedback_external_recipient .FeedbackExternalRecipient ;
89import com .objectcomputing .checkins .services .feedback_template .FeedbackTemplate ;
910import com .objectcomputing .checkins .services .fixture .FeedbackRequestFixture ;
1011import com .objectcomputing .checkins .services .fixture .FeedbackTemplateFixture ;
1112import com .objectcomputing .checkins .services .fixture .MemberProfileFixture ;
13+ import com .objectcomputing .checkins .services .fixture .FeedbackExternalRecipientFixture ;
1214import com .objectcomputing .checkins .services .fixture .ReviewPeriodFixture ;
1315import com .objectcomputing .checkins .services .fixture .RoleFixture ;
1416import com .objectcomputing .checkins .services .memberprofile .MemberProfile ;
4547import static org .junit .jupiter .api .Assertions .assertTrue ;
4648
4749@ Property (name = "replace.mailjet.factory" , value = StringUtils .TRUE )
48- class FeedbackRequestControllerTest extends TestContainersSuite implements MemberProfileFixture , FeedbackTemplateFixture , FeedbackRequestFixture , RoleFixture , ReviewPeriodFixture {
50+ class FeedbackRequestControllerTest extends TestContainersSuite implements MemberProfileFixture , FeedbackTemplateFixture , FeedbackRequestFixture , RoleFixture , ReviewPeriodFixture , FeedbackExternalRecipientFixture {
4951
5052 @ Inject
5153 @ Client ("/services/feedback/requests" )
@@ -80,6 +82,7 @@ private FeedbackRequestCreateDTO createDTO(FeedbackRequest feedbackRequest) {
8082 dto .setDueDate (feedbackRequest .getDueDate ());
8183 dto .setStatus (feedbackRequest .getStatus ());
8284 dto .setSubmitDate (feedbackRequest .getSubmitDate ());
85+ dto .setExternalRecipientId (feedbackRequest .getExternalRecipientId ());
8386 return dto ;
8487 }
8588
@@ -120,15 +123,15 @@ private void assertResponseEqualsEntity(FeedbackRequest feedbackRequest, Feedbac
120123 }
121124
122125 @ Test
123- void testCreateFeedbackRequestByAdmin () {
126+ void testCreateFeedbackRequestByAdminToRecipient () {
124127 //create two member profiles: one for normal employee, one for admin
125128 final MemberProfile memberProfile = createADefaultMemberProfile ();
126129 final MemberProfile admin = getMemberProfileRepository ().save (mkMemberProfile ("admin" ));
127130 final MemberProfile recipient = createADefaultRecipient ();
128131 assignAdminRole (admin );
129132
130133 //create feedback request
131- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , memberProfile , recipient );
134+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , memberProfile , recipient );
132135 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
133136
134137 //send feedback request
@@ -147,11 +150,11 @@ void testCreateFeedbackRequestByAdminToExternalRecipient() {
147150 //create two member profiles: one for normal employee, one for admin
148151 final MemberProfile memberProfile = createADefaultMemberProfile ();
149152 final MemberProfile admin = getMemberProfileRepository ().save (mkMemberProfile ("admin" ));
150- final MemberProfile recipient = createADefaultRecipient ();
153+ final FeedbackExternalRecipient feedbackExternalRecipient = createADefaultFeedbackExternalRecipient ();
151154 assignAdminRole (admin );
152155
153156 //create feedback request
154- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , memberProfile , recipient );
157+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithExternalRecipient (admin , memberProfile , feedbackExternalRecipient );
155158 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
156159
157160 //send feedback request
@@ -174,7 +177,7 @@ void testCreateFeedbackRequestByAssignedPDL() {
174177 final MemberProfile recipient = createADefaultRecipient ();
175178
176179 //create feedback request
177- final FeedbackRequest feedbackRequest = createFeedbackRequest (pdlMemberProfile , employeeMemberProfile , recipient );
180+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (pdlMemberProfile , employeeMemberProfile , recipient );
178181 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
179182
180183 //send feedback request
@@ -198,7 +201,7 @@ void testCreateFeedbackRequestSendsEmailNow() {
198201 final MemberProfile recipient = createADefaultRecipient ();
199202
200203 //create feedback request
201- final FeedbackRequest feedbackRequest = createFeedbackRequest (pdlMemberProfile , employeeMemberProfile , recipient );
204+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (pdlMemberProfile , employeeMemberProfile , recipient );
202205 feedbackRequest .setSendDate (LocalDate .now ());
203206 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
204207
@@ -230,7 +233,7 @@ void testCreateFeedbackRequestSendsEmailFuture() {
230233 final MemberProfile recipient = createADefaultRecipient ();
231234
232235 //create feedback request
233- final FeedbackRequest feedbackRequest = createFeedbackRequest (pdlMemberProfile , employeeMemberProfile , recipient );
236+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (pdlMemberProfile , employeeMemberProfile , recipient );
234237 feedbackRequest .setSendDate (LocalDate .now ().plusDays (1 ));
235238 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
236239
@@ -253,7 +256,7 @@ void testCreateFeedbackRequestByUnassignedPdl() {
253256 MemberProfile recipient = createAnUnrelatedUser ();
254257
255258 //create feedback request
256- final FeedbackRequest feedbackRequest = createFeedbackRequest (memberProfileForPDL , memberProfile , recipient );
259+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (memberProfileForPDL , memberProfile , recipient );
257260 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
258261
259262 //send feedback request
@@ -273,7 +276,7 @@ void testCreateFeedbackRequestByMember() {
273276 MemberProfile recipient = createAnUnrelatedUser ();
274277
275278 //create feedback request
276- final FeedbackRequest feedbackRequest = createFeedbackRequest (requesteeProfile , memberProfile , recipient );
279+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (requesteeProfile , memberProfile , recipient );
277280 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
278281
279282 //send feedback request
@@ -293,7 +296,7 @@ void testCreateFeedbackRequestWithInvalidCreatorId() {
293296 assignAdminRole (admin );
294297
295298 // Create feedback request with invalid creator ID
296- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
299+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
297300 feedbackRequest .setCreatorId (UUID .randomUUID ());
298301 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
299302
@@ -315,7 +318,7 @@ void testCreateFeedbackRequestWithInvalidRecipientId() {
315318 assignAdminRole (admin );
316319
317320 // Create feedback request with invalid recipient ID
318- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
321+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
319322 feedbackRequest .setRecipientId (UUID .randomUUID ());
320323 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
321324
@@ -337,7 +340,7 @@ void testCreateFeedbackRequestWithInvalidRequesteeId() {
337340 assignAdminRole (admin );
338341
339342 // Create feedback request with invalid requestee ID
340- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
343+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
341344 feedbackRequest .setRequesteeId (UUID .randomUUID ());
342345 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
343346
@@ -359,7 +362,7 @@ void testCreateFeedbackRequestWithNoRequestee() {
359362 assignAdminRole (admin );
360363
361364 // Create feedback request with no requestee
362- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
365+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
363366 feedbackRequest .setRequesteeId (null );
364367 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
365368
@@ -383,7 +386,7 @@ void testCreateFeedbackRequestWithNoRecipients() {
383386 assignAdminRole (admin );
384387
385388 // Create feedback request with no recipient(s)
386- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
389+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
387390 feedbackRequest .setRecipientId (null );
388391 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
389392
@@ -407,7 +410,7 @@ void testCreateFeedbackRequestWithNoSelectedTemplate() {
407410 assignAdminRole (admin );
408411
409412 // Create feedback request with no template
410- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
413+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
411414 feedbackRequest .setTemplateId (null );
412415 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
413416
@@ -431,7 +434,7 @@ void testCreateFeedbackRequestWithSendDateAfterDueDate() {
431434 assignAdminRole (admin );
432435
433436 // Create feedback request with invalid requestee ID
434- final FeedbackRequest feedbackRequest = createFeedbackRequest (admin , requestee , recipient );
437+ final FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (admin , requestee , recipient );
435438 feedbackRequest .setSendDate (LocalDate .of (1111 , 11 , 2 ));
436439 feedbackRequest .setDueDate (LocalDate .of (1111 , 11 , 1 ));
437440 final FeedbackRequestCreateDTO dto = createDTO (feedbackRequest );
@@ -1006,7 +1009,7 @@ void testUpdateSubmitDateNotAuthorized() {
10061009 MemberProfile recipient = createADefaultRecipient ();
10071010
10081011 // Save feedback request that has not been submitted yet
1009- final FeedbackRequest feedbackReq = createFeedbackRequest (pdl , requestee , recipient );
1012+ final FeedbackRequest feedbackReq = createFeedbackRequestWithRecipient (pdl , requestee , recipient );
10101013 feedbackReq .setSubmitDate (null );
10111014 getFeedbackRequestRepository ().save (feedbackReq );
10121015
@@ -1030,7 +1033,7 @@ void testUpdateSubmitDateWhenPdlEnablesEdits() {
10301033 MemberProfile recipient = createADefaultRecipient ();
10311034
10321035 // Save feedback request that has already been submitted
1033- final FeedbackRequest feedbackReq = createFeedbackRequest (pdl , requestee , recipient );
1036+ final FeedbackRequest feedbackReq = createFeedbackRequestWithRecipient (pdl , requestee , recipient );
10341037 feedbackReq .setSubmitDate (LocalDate .now ());
10351038 getFeedbackRequestRepository ().save (feedbackReq );
10361039
@@ -1055,7 +1058,7 @@ void testFeedbackRequestEnableEditsSendsEmail() {
10551058 MemberProfile recipient = createADefaultRecipient ();
10561059
10571060 // Save feedback request that has already been submitted
1058- final FeedbackRequest feedbackReq = createFeedbackRequest (pdl , requestee , recipient );
1061+ final FeedbackRequest feedbackReq = createFeedbackRequestWithRecipient (pdl , requestee , recipient );
10591062 feedbackReq .setSubmitDate (LocalDate .now ());
10601063 feedbackReq .setStatus ("submitted" );
10611064 getFeedbackRequestRepository ().save (feedbackReq );
@@ -1272,7 +1275,7 @@ void testRecipientGetBeforeSendDateNotAuthorized() {
12721275 MemberProfile pdlMemberProfile = createADefaultMemberProfile ();
12731276 MemberProfile requestee = createADefaultMemberProfileForPdl (pdlMemberProfile );
12741277 MemberProfile recipient = createADefaultRecipient ();
1275- FeedbackRequest feedbackRequest = createFeedbackRequest (pdlMemberProfile , requestee , recipient );
1278+ FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (pdlMemberProfile , requestee , recipient );
12761279 feedbackRequest .setSendDate (LocalDate .now ().plusDays (1 ));
12771280 getFeedbackRequestRepository ().save (feedbackRequest );
12781281
@@ -1296,7 +1299,7 @@ void testRecipientGetBeforeSendDateAsAdminAuthorized() {
12961299 assignAdminRole (adminUser );
12971300
12981301 // Save feedback request with send date in the future
1299- FeedbackRequest feedbackRequest = createFeedbackRequest (pdlMemberProfile , requestee , recipient );
1302+ FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (pdlMemberProfile , requestee , recipient );
13001303 feedbackRequest .setSendDate (LocalDate .now ().plusDays (1 ));
13011304 getFeedbackRequestRepository ().save (feedbackRequest );
13021305
@@ -1318,7 +1321,7 @@ void testRecipientGetBeforeSendDateAsPdlAuthorized() {
13181321 MemberProfile recipient = createADefaultRecipient ();
13191322
13201323 // Save feedback request with send date in the future
1321- FeedbackRequest feedbackRequest = createFeedbackRequest (pdlMemberProfile , requestee , recipient );
1324+ FeedbackRequest feedbackRequest = createFeedbackRequestWithRecipient (pdlMemberProfile , requestee , recipient );
13221325 feedbackRequest .setSendDate (LocalDate .now ().plusDays (1 ));
13231326 getFeedbackRequestRepository ().save (feedbackRequest );
13241327
0 commit comments