Skip to content
Snippets Groups Projects
Commit 41fcf1d6 authored by Dominika Zemanovičová's avatar Dominika Zemanovičová
Browse files

Fix AnswerServiceTest

parent 77e2bcb2
No related branches found
No related tags found
3 merge requests!31M2,!30M2 exercise,!29M2 exercise
...@@ -3,7 +3,6 @@ package org.fuseri.moduleexercise.answer; ...@@ -3,7 +3,6 @@ package org.fuseri.moduleexercise.answer;
import jakarta.persistence.EntityNotFoundException; import jakarta.persistence.EntityNotFoundException;
import org.fuseri.moduleexercise.exercise.Exercise; import org.fuseri.moduleexercise.exercise.Exercise;
import org.fuseri.moduleexercise.question.Question; import org.fuseri.moduleexercise.question.Question;
import org.fuseri.moduleexercise.question.QuestionRepository;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
...@@ -20,23 +19,21 @@ import static org.mockito.Mockito.verify; ...@@ -20,23 +19,21 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
@SpringBootTest @SpringBootTest
public class AnswerServiceTest { class AnswerServiceTest {
@MockBean
AnswerRepository repository;
@MockBean
QuestionRepository questionRepository;
@Autowired @Autowired
AnswerService service; AnswerService service;
@MockBean
AnswerRepository answerRepository;
Answer answer; Answer answer;
Question question; Question question;
Exercise exercise; Exercise exercise;
@BeforeEach @BeforeEach
void setup() { void setup() {
exercise = new Exercise("idioms", "exercise on basic idioms", 2, 1L, new HashSet<Question>()); exercise = new Exercise("idioms", "exercise on basic idioms", 2, 1L, new HashSet<>());
question = new Question("text", new HashSet<>(), exercise); question = new Question("text", new HashSet<>(), exercise);
answer = new Answer("text", false, question); answer = new Answer("text", false, question);
} }
...@@ -44,39 +41,38 @@ public class AnswerServiceTest { ...@@ -44,39 +41,38 @@ public class AnswerServiceTest {
@Test @Test
void create() { void create() {
when(repository.save(answer)).thenReturn(answer); when(answerRepository.save(answer)).thenReturn(answer);
Answer result = service.create(answer); Answer result = service.create(answer);
Assertions.assertEquals(answer, result); Assertions.assertEquals(answer, result);
verify(repository).save(answer); verify(answerRepository).save(answer);
} }
@Test @Test
void notFound() { void notFound() {
when(repository.findById(anyLong())).thenReturn(Optional.empty()); when(answerRepository.findById(anyLong())).thenReturn(Optional.empty());
Assertions.assertThrows(EntityNotFoundException.class, () -> service.find(anyLong())); Assertions.assertThrows(EntityNotFoundException.class, () -> service.find(anyLong()));
} }
@Test @Test
void find() { void find() {
when(repository.findById(anyLong())).thenReturn(Optional.of(answer)); when(answerRepository.findById(anyLong())).thenReturn(Optional.of(answer));
Answer result = service.find(anyLong()); Answer result = service.find(anyLong());
Assertions.assertEquals(answer, result); Assertions.assertEquals(answer, result);
verify(repository).findById(anyLong()); verify(answerRepository).findById(anyLong());
} }
@Test @Test
void findByQuestionId() { void findAllByQuestionId() {
long id = 1; long id = 1;
List<Answer> list = Collections.emptyList(); List<Answer> list = Collections.emptyList();
when(repository.existsById(id)).thenReturn(true); when(answerRepository.existsById(id)).thenReturn(true);
when(repository.findByQuestionId(id)).thenReturn(list); when(answerRepository.findByQuestionId(id)).thenReturn(list);
List<Answer> result = service.findAllByQuestionId(1L); List<Answer> result = service.findAllByQuestionId(1L);
Assertions.assertEquals(list, result); Assertions.assertEquals(list, result);
verify(repository).findByQuestionId(id); verify(answerRepository).findByQuestionId(id);
} }
} }
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