fix : feed API, TODO FIX Testcode.

This commit is contained in:
kms
2022-11-29 00:53:04 +09:00
parent 2248112454
commit c51f469124
3 changed files with 40 additions and 2 deletions

View File

@@ -13,4 +13,6 @@ public interface ProfileRepository extends JpaRepository<Follow, Long> {
List<Follow> findByFollowerId(Long followeeId);
List<Follow> findByFolloweeId(Long followerId);
}

View File

@@ -1,6 +1,7 @@
package com.io.realworld.domain.aggregate.profile.repository;
import com.io.realworld.domain.aggregate.profile.entity.Follow;
import com.io.realworld.domain.aggregate.user.dto.UserAuth;
import com.io.realworld.domain.aggregate.user.entity.User;
import com.io.realworld.domain.aggregate.user.repository.UserRepository;
import org.junit.jupiter.params.ParameterizedTest;
@@ -8,6 +9,8 @@ import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
import java.util.List;
import java.util.Optional;
import java.util.stream.Stream;
@@ -67,7 +70,7 @@ class ProfileRepositoryTest {
}
@MethodSource("getFolloweeAndFollower")
@ParameterizedTest(name = "repo:팔로잉 제거 테스")
@ParameterizedTest(name = "repo:팔로잉 제거 테스")
void deleteFollow(User followee, User follower){
//given
userRepository.save(followee);
@@ -80,12 +83,44 @@ class ProfileRepositoryTest {
//then
}
@MethodSource("getFolloweeAndFollower")
@ParameterizedTest(name = "repo:피드 테스트")
void feedArticle(User followee, User follower){
UserAuth userAuth = UserAuth.builder().id(1L).username("username").bio("bio").email("email").build();
User follower2 = User.builder()
.id(3L)
.bio("follower bio")
.email("follower2@email.com")
.password("password")
.image("follower image")
.username("follower2")
.build();
userRepository.save(followee);
userRepository.save(follower);
userRepository.save(follower2);
Follow follow = Follow.builder().followee(followee).follower(follower).build();
Follow follow2 = Follow.builder().followee(followee).follower(follower2).build();
profileRepository.save(follow);
profileRepository.save(follow2);
List<Follow> follows = profileRepository.findByFolloweeId(userAuth.getId());
assertThat(follows.get(0).getFollowee().getUsername()).isEqualTo(followee.getUsername());
assertThat(follows.get(0).getFollower().getUsername()).isEqualTo(follower.getUsername());
assertThat(follows.get(1).getFollowee().getUsername()).isEqualTo(followee.getUsername());
assertThat(follows.get(1).getFollower().getUsername()).isEqualTo(follower2.getUsername());
}
private static Stream<Arguments> getFolloweeAndFollower(){
return Stream.of(
Arguments.of(
User.builder()
.id(1L)
.bio("follow bio")
.email("follow@email.com")
.password("password")
@@ -93,6 +128,7 @@ class ProfileRepositoryTest {
.username("follow")
.build(),
User.builder()
.id(2L)
.bio("follower bio")
.email("follower@email.com")
.password("password")

View File

@@ -66,7 +66,7 @@
import articleList from '@/components/ArticleListFeed.vue'
import articleListGlobal from "@/components/ArticleListGlobal.vue";
import tagLists from "@/components/TagList.vue";
import {ref, getCurrentInstance, onMounted} from "vue";
import {ref} from "vue";
import {useStore} from "vuex";
export default {
name: "TheHome",