From b557acc963ee82951d0581584fcc3a0559fc8ca6 Mon Sep 17 00:00:00 2001
From: Petr Seidl <seidlpet@fit.cvut.cz>
Date: Tue, 8 Dec 2020 11:32:35 +0100
Subject: [PATCH] Update added support for DTO

---
 .../controller/SubjectControllerTest.java      | 18 ++++--------------
 1 file changed, 4 insertions(+), 14 deletions(-)

diff --git a/src/test/java/cz/cvut/fit/tjv/seidlpet/semestralka/controller/SubjectControllerTest.java b/src/test/java/cz/cvut/fit/tjv/seidlpet/semestralka/controller/SubjectControllerTest.java
index a35b47c..2b14ca5 100644
--- a/src/test/java/cz/cvut/fit/tjv/seidlpet/semestralka/controller/SubjectControllerTest.java
+++ b/src/test/java/cz/cvut/fit/tjv/seidlpet/semestralka/controller/SubjectControllerTest.java
@@ -7,7 +7,6 @@ import cz.cvut.fit.tjv.seidlpet.semestralka.data.entity.Student;
 import cz.cvut.fit.tjv.seidlpet.semestralka.data.entity.Subject;
 import cz.cvut.fit.tjv.seidlpet.semestralka.data.entity.Teacher;
 import org.hamcrest.CoreMatchers;
-import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 import org.mockito.BDDMockito;
 import org.mockito.Mockito;
@@ -25,10 +24,6 @@ import java.util.*;
 @SpringBootTest
 @AutoConfigureMockMvc
 public class SubjectControllerTest {
-
-    @Autowired
-    private SubjectController subjectController;
-
     @Autowired
     private MockMvc mvc;
 
@@ -56,17 +51,14 @@ public class SubjectControllerTest {
                 .andExpect(MockMvcResultMatchers.jsonPath("$.id").exists())
                 .andExpect(MockMvcResultMatchers.jsonPath("$.name", CoreMatchers.is(subject.getName())))
                 .andExpect(MockMvcResultMatchers.jsonPath("$.lang", CoreMatchers.is(subject.getLang())))
-                .andExpect(MockMvcResultMatchers.jsonPath("$.teacher.id").exists())
-                .andExpect(MockMvcResultMatchers.jsonPath("$.teacher.firstName", CoreMatchers.is(teacher.getFirstName())))
-                .andExpect(MockMvcResultMatchers.jsonPath("$.teacher.lastName", CoreMatchers.is(teacher.getLastName())))
+                .andExpect(MockMvcResultMatchers.jsonPath("$.teacherId", CoreMatchers.is(teacher.getId())))
                 .andExpect(MockMvcResultMatchers.jsonPath("$.students").isEmpty());
-        Assertions.assertEquals(subject, subjectController.findById(subject.getId()));
         Mockito.verify(subjectService, Mockito.atLeastOnce()).findById(subject.getId());
     }
 
     @Test
     void findAll() throws Exception {
-        Teacher teacher = new Teacher("Black","John");
+        Teacher teacher = new Teacher(1,"Black","John");
         List<Subject> subjects = Arrays.asList(
                 new Subject(1,"Java","CZ",teacher,new ArrayList<>()),
                 new Subject(2,"C++","EN",teacher, Collections.singletonList(
@@ -78,7 +70,6 @@ public class SubjectControllerTest {
                 .contentType(MediaType.APPLICATION_JSON))
                 .andExpect(MockMvcResultMatchers.status().isOk())
                 .andExpect(MockMvcResultMatchers.jsonPath("$.*.id").exists());
-        Assertions.assertEquals(subjects,subjectController.findAll(null));
 
         List<Subject> subject = Collections.singletonList(new Subject(2, "C++", "EN", teacher, Collections.singletonList(
                 new Student(1, "Teo", "Smith", 1.2)
@@ -88,17 +79,16 @@ public class SubjectControllerTest {
                 .contentType(MediaType.APPLICATION_JSON))
                 .andExpect(MockMvcResultMatchers.status().isOk())
                 .andExpect(MockMvcResultMatchers.jsonPath("$.*.id",CoreMatchers.equalTo(Collections.singletonList(2))));
-        Assertions.assertEquals(subject,subjectController.findAll(2));
 
         Mockito.verify(subjectService,Mockito.atLeastOnce()).findAll();
     }
     @Test
     void update() throws Exception {
         Teacher teacher = new Teacher(1, "Johny", "Black");
-        Subject newSubject = new Subject(1,"Ted","SK",teacher,new ArrayList<>());
+        SubjectCreateDTO subjectCreateDTO = new SubjectCreateDTO("Java","CZ", teacher.getId(), Arrays.asList(1,2,3));
         mvc.perform(MockMvcRequestBuilders.put("/api/v1/subject/1")
                 .contentType(MediaType.APPLICATION_JSON)
-                .content(asJsonString(newSubject)))
+                .content(asJsonString(subjectCreateDTO)))
                 .andExpect(MockMvcResultMatchers.status().isOk());
     }
 
-- 
GitLab