Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package be.codefever.eduapp.repository;
- import be.codefever.eduapp.mockdata.MockData;
- import be.codefever.eduapp.models.StudentExamAnswerEntity;
- import com.google.gson.reflect.TypeToken;
- import org.junit.Test;
- import org.junit.runner.RunWith;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
- import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
- import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager;
- import org.springframework.test.context.ActiveProfiles;
- import org.springframework.test.context.junit4.SpringRunner;
- import java.util.List;
- import java.util.UUID;
- import java.util.stream.Collectors;
- import static org.hamcrest.CoreMatchers.is;
- import static org.hamcrest.Matchers.containsInAnyOrder;
- import static org.hamcrest.Matchers.not;
- import static org.junit.Assert.assertThat;
- import static org.junit.Assert.assertTrue;
- @RunWith(SpringRunner.class)
- @DataJpaTest
- @AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
- @ActiveProfiles("it")
- public class StudentExamAnswerRepositoryTest {
- @Autowired
- private TestEntityManager entityManager;
- @Autowired
- private StudentExamAnswerRepository studentExamAnswerRepository;
- protected static final MockData mockData = new MockData();
- private final UUID studentId = UUID.fromString("d49515ed-972c-11e9-b935-0a0027000401");
- private final UUID studentIdNotFound = UUID.fromString("d49515ed-972c-11e9-b935-0a0027009999");
- @Test
- public void findAllByStudentId() {
- //Given
- List<StudentExamAnswerEntity> studentExamAnswerEntities = setup_StudentExamAnswerEntityList();
- List<StudentExamAnswerEntity> expected = studentExamAnswerEntities.stream().filter(entity -> entity.getStudentId().equals(studentId)).collect(Collectors.toList());
- List<StudentExamAnswerEntity> notExpected = studentExamAnswerEntities.stream().filter(entity -> !entity.getStudentId().equals(studentId)).collect(Collectors.toList());
- //When
- List<StudentExamAnswerEntity> result = studentExamAnswerRepository.findAllByStudentId(studentId);
- //Then
- assertThat(result.size(), is(expected.size()));
- assertThat(result, containsInAnyOrder(expected.toArray()));
- assertThat(result, not(containsInAnyOrder(notExpected.toArray())));
- }
- @Test
- public void findAllByStudentId_idNotFound() {
- //Given
- setup_StudentExamAnswerEntityList();
- //When
- List<StudentExamAnswerEntity> result = studentExamAnswerRepository.findAllByStudentId(studentIdNotFound);
- //Then
- assertTrue(result.isEmpty());
- }
- private List<StudentExamAnswerEntity> setup_StudentExamAnswerEntityList() {
- List<StudentExamAnswerEntity> studentExamAnswerEntities = mockData.getFileAsObjectList("studentExamAnswerEntityList.json", new TypeToken<List<StudentExamAnswerEntity>>() {
- });
- studentExamAnswerEntities.forEach(entity -> entityManager.persist(entity));
- return studentExamAnswerEntities;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement