3535import edu .tamu .app .model .repo .UserRepo ;
3636import edu .tamu .app .model .repo .specification .IdeaSpecification ;
3737import edu .tamu .app .model .request .FilteredPageRequest ;
38+ import edu .tamu .app .model .request .IssueRequest ;
39+ import edu .tamu .app .service .ProjectService ;
3840import edu .tamu .weaver .auth .model .Credentials ;
3941import edu .tamu .weaver .response .ApiResponse ;
4042
@@ -44,6 +46,15 @@ public class IdeaControllerTest {
4446 private static User TEST_USER1 = new User ("123456789" );
4547 private static User TEST_USER2 = new User ("987654321" );
4648
49+ private static final Credentials TEST_CREDENTIALS_1 = new Credentials ();
50+ static {
51+ TEST_CREDENTIALS_1 .setUin ("123456789" );
52+ TEST_CREDENTIALS_1 .setEmail ("aggieJack@tamu.edu" );
53+ TEST_CREDENTIALS_1 .setFirstName ("Aggie" );
54+ TEST_CREDENTIALS_1 .setLastName ("Jack" );
55+ TEST_CREDENTIALS_1 .setRole ("ROLE_USER" );
56+ }
57+
4758 private static final String TEST_IDEA_TITLE1 = "Test Idea Title 1" ;
4859 private static final String TEST_IDEA_TITLE2 = "Test Idea Title 2" ;
4960 private static final String TEST_IDEA_TITLE3 = "Test Idea Title 3" ;
@@ -56,14 +67,15 @@ public class IdeaControllerTest {
5667 private static final String TEST_FEEDBACK = "Test Rejection Feedback" ;
5768
5869 private static Service TEST_SERVICE = new Service (TEST_SERVICE_NAME , Status .UP , false , true , true , "" , "" );
59- private static Idea TEST_IDEA1 = new Idea (TEST_IDEA_TITLE1 , TEST_IDEA_DESCRIPTION1 , TEST_USER1 );
70+ private static Idea TEST_IDEA1 = new Idea (TEST_IDEA_TITLE1 , TEST_IDEA_DESCRIPTION1 , TEST_USER1 , TEST_SERVICE );
6071 private static Idea TEST_IDEA2 = new Idea (TEST_IDEA_TITLE2 , TEST_IDEA_DESCRIPTION2 , TEST_USER1 );
6172 private static Idea TEST_IDEA3 = new Idea (TEST_IDEA_TITLE3 , TEST_IDEA_DESCRIPTION3 , TEST_USER1 );
6273 private static Idea TEST_MODIFIED_IDEA = new Idea (TEST_MODIFIED_IDEA_TITLE , TEST_MODIFIED_IDEA_DESCRIPTION , TEST_USER2 , TEST_SERVICE );
6374 private static Idea ideaWithFeedback = new Idea (TEST_IDEA_TITLE1 , TEST_IDEA_DESCRIPTION1 , TEST_USER1 );
6475 private Idea rejectedIdea = new Idea (TEST_IDEA_TITLE1 , TEST_IDEA_DESCRIPTION1 , TEST_USER1 );
6576 private static List <Idea > mockIdeaList = new ArrayList <Idea >(Arrays .asList (new Idea [] { TEST_IDEA1 , TEST_IDEA2 , TEST_IDEA3 }));
6677 private static Page <Idea > mockPageableIdeaList = new PageImpl <Idea >(Arrays .asList (new Idea [] { TEST_IDEA1 , TEST_IDEA2 , TEST_IDEA3 }));
78+ private static IssueRequest TEST_ISSUE_REQUEST = new IssueRequest (TEST_IDEA1 , TEST_CREDENTIALS_1 );
6779
6880 private static User user = new User ("123456789" );
6981
@@ -78,6 +90,9 @@ public class IdeaControllerTest {
7890 @ Mock
7991 private ServiceRepo serviceRepo ;
8092
93+ @ Mock
94+ private ProjectService projectService ;
95+
8196 @ Mock
8297 private SimpMessagingTemplate simpMessagingTemplate ;
8398
@@ -102,6 +117,7 @@ public void setup() throws UserNotFoundException {
102117 when (ideaRepo .update (any (Idea .class ))).thenReturn (TEST_MODIFIED_IDEA );
103118 when (ideaRepo .reject (TEST_IDEA1 )).thenReturn (rejectedIdea );
104119 when (serviceRepo .findOne (any (Long .class ))).thenReturn (TEST_SERVICE );
120+ when (projectService .submitIssueRequest (any (IssueRequest .class ))).thenReturn (new ApiResponse (SUCCESS , TEST_ISSUE_REQUEST ));
105121 doNothing ().when (ideaRepo ).delete (any (Idea .class ));
106122 doNothing ().when (ideaRepo ).delete (any (Idea .class ));
107123 }
@@ -153,7 +169,14 @@ public void testInvalidReject() {
153169 response = ideaController .reject (TEST_IDEA1 );
154170 assertEquals ("Idea without feedback was successfull" , INVALID , response .getMeta ().getStatus ());
155171 }
156-
172+
173+ @ Test
174+ public void testHelpdesk () {
175+ when (ideaRepo .update (any (Idea .class ))).thenReturn (TEST_IDEA1 );
176+ response = ideaController .helpdesk (TEST_IDEA1 , credentials );
177+ assertEquals ("Request was not successfull" , SUCCESS , response .getMeta ().getStatus ());
178+ }
179+
157180 @ Test
158181 public void testRemove () {
159182 response = ideaController .remove (TEST_MODIFIED_IDEA );
0 commit comments