Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ru.javamentor.medium_20.repository;
- import org.junit.jupiter.api.Test;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
- import ru.javamentor.medium_20.model.topic.Hashtag;
- import ru.javamentor.medium_20.model.topic.Topic;
- import java.util.HashSet;
- import java.util.List;
- import java.util.concurrent.ThreadLocalRandom;
- import java.util.stream.Collectors;
- import java.util.stream.Stream;
- import static org.junit.jupiter.api.Assertions.assertEquals;
- /**
- * @author Daniil Shreyder
- * Date: 04.06.2021
- */
- @DataJpaTest
- class HashtagRepositoryTest {
- @Autowired
- HashtagRepository hashtagRepository;
- @Autowired
- TopicRepository topicRepository;
- Topic generateTestTopic() {
- Topic topic = new Topic();
- topicRepository.save(topic);
- return topic;
- }
- Hashtag generateTestHashtag() {
- Hashtag hashtag = new Hashtag();
- hashtag.setName("" + ThreadLocalRandom.current().nextInt(100000));
- hashtag.setTopics(new HashSet<>());
- return hashtag;
- }
- @Test
- void findHashtagWithTopicsById() {
- Hashtag hashtag = generateTestHashtag();
- List<Topic> topicList = Stream.generate(this::generateTestTopic).limit(100L).collect(Collectors.toList());
- hashtag.getTopics().addAll(topicList);
- // Id gets assigned to hashtag here
- hashtagRepository.save(hashtag);
- Hashtag test = hashtagRepository.findHashtagWithTopicsById(hashtag.getId()).orElseThrow();
- assertEquals(hashtag, test);
- }
- @Test
- void findHashtagWithTopicsByName() {
- Hashtag hashtag = generateTestHashtag();
- List<Topic> topicList = Stream.generate(this::generateTestTopic).limit(100L).collect(Collectors.toList());
- hashtag.getTopics().addAll(topicList);
- hashtagRepository.save(hashtag);
- Hashtag test = hashtagRepository.findHashtagWithTopicsByName(hashtag.getName()).orElseThrow();
- assertEquals(hashtag, test);
- }
- @Test
- void findByName() {
- Hashtag hashtag = generateTestHashtag();
- hashtagRepository.save(hashtag);
- Hashtag test = hashtagRepository.findByName(hashtag.getName()).orElseThrow();
- assertEquals(hashtag, test);
- }
- @Test
- void getHashtagWithTopicsById() {
- Hashtag hashtag = generateTestHashtag();
- List<Topic> topicList = Stream.generate(this::generateTestTopic).limit(100L).collect(Collectors.toList());
- hashtag.getTopics().addAll(topicList);
- // Id gets assigned to hashtag here
- hashtagRepository.save(hashtag);
- Hashtag test = hashtagRepository.getHashtagWithTopicsById(hashtag.getId());
- assertEquals(hashtag, test);
- }
- @Test
- void getHashtagWithTopicsByName() {
- Hashtag hashtag = generateTestHashtag();
- List<Topic> topicList = Stream.generate(this::generateTestTopic).limit(100L).collect(Collectors.toList());
- hashtag.getTopics().addAll(topicList);
- hashtagRepository.save(hashtag);
- Hashtag test = hashtagRepository.getHashtagWithTopicsByName(hashtag.getName());
- assertEquals(hashtag, test);
- }
- @Test
- void getByName() {
- Hashtag hashtag = generateTestHashtag();
- hashtagRepository.save(hashtag);
- Hashtag test = hashtagRepository.getByName(hashtag.getName());
- assertEquals(hashtag, test);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement