You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@dlab.apache.org by GitBox <gi...@apache.org> on 2020/09/07 11:46:01 UTC

[GitHub] [incubator-dlab] ofuks commented on a change in pull request #893: [DLAB ]Project resource UT

ofuks commented on a change in pull request #893:
URL: https://github.com/apache/incubator-dlab/pull/893#discussion_r484379658



##########
File path: services/self-service/src/test/java/com/epam/dlab/backendapi/resources/ProjectResourceTest.java
##########
@@ -98,7 +101,20 @@ public void createExistingProject() {
                 .post(Entity.json(createProjectDTO));
 
         assertEquals(HttpStatus.SC_INTERNAL_SERVER_ERROR, response.getStatus());
-        verify(projectService).create(getUserInfo(), returnProjectDTO(createProjectDTO), createProjectDTO.getName());
+        verify(projectService).create(getUserInfo(), prepareProjectDTO(createProjectDTO), createProjectDTO.getName());
+        verifyNoMoreInteractions(projectService);
+    }
+
+    @Test
+    public void startProject() {
+        final Response response = resources.getJerseyTest()
+                .target("project/start")
+                .request()
+                .header("Authorization", "Bearer " + TOKEN)
+                .post(Entity.json(getProjectActionDTO()));
+
+        assertEquals(HttpStatus.SC_ACCEPTED, response.getStatus());
+        verify(projectService).start(any(UserInfo.class), anyList(), anyString());

Review comment:
       We need to specify the exact arguments here, isn’t it?

##########
File path: services/self-service/src/test/java/com/epam/dlab/backendapi/resources/ProjectResourceTest.java
##########
@@ -115,23 +131,104 @@ public void stopProject() {
         verifyNoMoreInteractions(projectService);
     }
 
+
     @Test
-    public void startProject() {
+    public void getProject() {
+        when(projectService.get(anyString())).thenReturn(ProjectDTO.builder().name(PROJECT_NAME).build());
+
         final Response response = resources.getJerseyTest()
-                .target("project/start")
+                .target("project/" + PROJECT_NAME)
                 .request()
                 .header("Authorization", "Bearer " + TOKEN)
-                .post(Entity.json(getProjectActionDTO()));
+                .get();
 
-        assertEquals(HttpStatus.SC_ACCEPTED, response.getStatus());
-        verify(projectService).start(any(UserInfo.class), anyList(), anyString());
+        assertEquals(HttpStatus.SC_OK, response.getStatus());
+        assertEquals(MediaType.APPLICATION_JSON, response.getHeaderString(HttpHeaders.CONTENT_TYPE));
+        verify(projectService).get(PROJECT_NAME);
+        verifyNoMoreInteractions(projectService);
+    }
+
+    @Test
+    public void getProjects() {
+        when(projectService.getProjects(any(UserInfo.class))).thenReturn(Collections.singletonList(ProjectDTO.builder().name(PROJECT_NAME).build()));
+
+        final Response response = resources.getJerseyTest()
+                .target("project")
+                .request()
+                .header("Authorization", "Bearer " + TOKEN)
+                .get();
+
+        assertEquals(HttpStatus.SC_OK, response.getStatus());
+        assertEquals(MediaType.APPLICATION_JSON, response.getHeaderString(HttpHeaders.CONTENT_TYPE));
+        verify(projectService).getProjects(getUserInfo());
+        verifyNoMoreInteractions(projectService);
+    }
+
+    @Test
+    public void getUserProjects() {
+        when(projectService.getUserProjects(getUserInfo(), false)).thenReturn(Collections.singletonList(ProjectDTO.builder().name(PROJECT_NAME).build()));
+
+        final Response response = resources.getJerseyTest()
+                .target("project/me")
+                .request()
+                .header("Authorization", "Bearer " + TOKEN)
+                .get();
+
+        assertEquals(HttpStatus.SC_OK, response.getStatus());
+        assertEquals(MediaType.APPLICATION_JSON, response.getHeaderString(HttpHeaders.CONTENT_TYPE));
+        verify(projectService).getUserProjects(getUserInfo(), false);

Review comment:
       Use **Boolean.FALSE** instead of just **false**

##########
File path: services/self-service/src/test/java/com/epam/dlab/backendapi/resources/ProjectResourceTest.java
##########
@@ -181,4 +278,16 @@ private ProjectDTO returnProjectDTO(CreateProjectDTO createProjectDTO) {
     private ProjectActionFormDTO getProjectActionDTO() {
         return new ProjectActionFormDTO(PROJECT_NAME, Collections.singletonList("https://localhost:8083/"));
     }
+
+    private UpdateProjectDTO prepareUpdateProjectDTO() {
+        return new UpdateProjectDTO(PROJECT_NAME, Collections.emptySet(), Collections.emptySet(), true);

Review comment:
       Use **Boolean.TRUE** instead of just **true**

##########
File path: services/self-service/src/test/java/com/epam/dlab/backendapi/resources/ProjectResourceTest.java
##########
@@ -181,4 +278,16 @@ private ProjectDTO returnProjectDTO(CreateProjectDTO createProjectDTO) {
     private ProjectActionFormDTO getProjectActionDTO() {
         return new ProjectActionFormDTO(PROJECT_NAME, Collections.singletonList("https://localhost:8083/"));
     }
+
+    private UpdateProjectDTO prepareUpdateProjectDTO() {
+        return new UpdateProjectDTO(PROJECT_NAME, Collections.emptySet(), Collections.emptySet(), true);
+    }
+
+    private ProjectActionFormDTO prepareProjectActionFormDTO(){
+        return new ProjectActionFormDTO(PROJECT_NAME, Collections.singletonList("https://localhost:8083/"));
+    }
+
+    private List<UpdateProjectBudgetDTO> prepareUpdateProjectBudgetDTOs() {
+        return Collections.singletonList(new UpdateProjectBudgetDTO(PROJECT_NAME, 123, false));

Review comment:
       Use **Boolean.FALSE** instead of just **false**




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@dlab.apache.org
For additional commands, e-mail: dev-help@dlab.apache.org