Skip to content
Snippets Groups Projects
Commit b557acc9 authored by Petr Seidl's avatar Petr Seidl
Browse files

Update added support for DTO

parent 3bf47297
No related branches found
No related tags found
No related merge requests found
......@@ -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());
}
 
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment