Select Git revision
DocumentRepositoryTests.java
DocumentRepositoryTests.java 3.27 KiB
package hu.pazmany;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.annotation.DirtiesContext;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest
@DirtiesContext(classMode = DirtiesContext.ClassMode.BEFORE_EACH_TEST_METHOD)
public class DocumentRepositoryTests {
@Autowired
private DocumentRepository documentRepository;
@Autowired
private UserRepository userRepository;
@Autowired
private SubjectRepository subjectRepository;
@Test
public void testFindAllByUser() {
User user = new User();
user.setUsername("testUser");
user.setPassword("testPassword");
userRepository.save(user);
Subject subject = new Subject();
subject.setSubjectId("testId");
subject.setName("testName");
subjectRepository.save(subject);
int n = 4;
for (int i = 0; i < n; i++) {
Document document = new Document();
document.setUser(user);
document.setSubject(subject);
document.setTitle("testTitle" + i);
document.setFilepath("testFilepath" + i);
documentRepository.save(document);
}
List<Document> documents = documentRepository.findAllByUser(user);
assertThat(documents).hasSize(n);
for (int i = 0; i < n; i++) {
assertThat(documents.get(i).getUser().getUsername()).isEqualTo(user.getUsername());
}
}
@Test
public void testFindAllBySubject() {
Subject subject = new Subject();
subject.setSubjectId("testId");
subject.setName("testName");
subjectRepository.save(subject);
User user = new User();
user.setUsername("testUser");
user.setPassword("testPassword");
userRepository.save(user);
int n = 4;
for (int i = 0; i < n; i++) {
Document document = new Document();
document.setUser(user);
document.setSubject(subject);
document.setTitle("testTitle" + i);
document.setFilepath("testFilepath" + i);
documentRepository.save(document);
}
List<Document> documents = documentRepository.findAllBySubject(subject);
assertThat(documents).hasSize(n);
for (int i = 0; i < n; i++) {
assertThat(documents.get(i).getSubject().getSubjectId()).isEqualTo(subject.getSubjectId());
}
}
@Test
public void testFindById() {
Subject subject = new Subject();
subject.setSubjectId("testId");
subject.setName("testName");
subjectRepository.save(subject);
User user = new User();
user.setUsername("testUser");
user.setPassword("testPassword");
userRepository.save(user);
Document document = new Document();
document.setUser(user);
document.setSubject(subject);
document.setTitle("testTitle");
document.setFilepath("testFilepath");
documentRepository.save(document);
Document found = documentRepository.findById(document.getId()).get();
assertThat(found.getTitle()).isEqualTo(document.getTitle());
}
}