Skip to content

Commit cd18c11

Browse files
committed
[Test]NoticeCategoryRepositoryV2Test 성공
1 parent 0e5e84e commit cd18c11

File tree

8 files changed

+184
-3
lines changed

8 files changed

+184
-3
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.example.Jinus.entity.notice;
2+
3+
import jakarta.persistence.Column;
4+
import jakarta.persistence.Entity;
5+
import jakarta.persistence.Id;
6+
import jakarta.persistence.Table;
7+
import lombok.AllArgsConstructor;
8+
import lombok.Getter;
9+
import lombok.NoArgsConstructor;
10+
import lombok.Setter;
11+
12+
@Entity
13+
@Getter
14+
@Setter
15+
@AllArgsConstructor
16+
@NoArgsConstructor
17+
@Table(name = "notice_category")
18+
public class NoticeCategoryEntity {
19+
@Id
20+
@Column(name = "id")
21+
private int id;
22+
23+
@Column(name = "department_id")
24+
private int departmentId;
25+
26+
@Column(name = "category")
27+
private String category;
28+
29+
@Column(name = "mi")
30+
private int mi;
31+
32+
@Column(name = "bbs_id")
33+
private int bbsId;
34+
35+
@Column(name = "last_ntt_sn")
36+
private int lastNttSn;
37+
38+
@Column(name = "updated_at")
39+
private String updatedAt;
40+
}
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package com.example.Jinus.entity.notice;
2+
3+
import jakarta.persistence.Column;
4+
import jakarta.persistence.Entity;
5+
import jakarta.persistence.Id;
6+
import jakarta.persistence.Table;
7+
import lombok.AllArgsConstructor;
8+
import lombok.Getter;
9+
import lombok.NoArgsConstructor;
10+
import lombok.Setter;
11+
12+
import java.sql.Timestamp;
13+
14+
@Entity
15+
@Setter
16+
@Getter
17+
@AllArgsConstructor
18+
@NoArgsConstructor
19+
@Table(name = "notice")
20+
public class NoticeEntity {
21+
@Id
22+
@Column(name = "id")
23+
private int id;
24+
25+
@Column(name = "category_id")
26+
private int categoryId;
27+
28+
@Column(name = "title")
29+
private String title;
30+
31+
@Column(name = "ntt_sn")
32+
private int nttSn;
33+
34+
@Column(name = "created_at")
35+
private String createdAt;
36+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package com.example.Jinus.repository.v2.notice;
2+
3+
import com.example.Jinus.entity.notice.NoticeCategoryEntity;
4+
import org.springframework.data.jpa.repository.JpaRepository;
5+
import org.springframework.data.jpa.repository.Query;
6+
7+
import java.util.List;
8+
9+
public interface NoticeCategoryRepositoryV2 extends JpaRepository<NoticeCategoryEntity, Integer> {
10+
@Query("SELECT n FROM NoticeCategoryEntity n WHERE n.departmentId = :departmentId")
11+
List<NoticeCategoryEntity> findCategoryListByDepartmentId(int departmentId);
12+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.example.Jinus.repository.v2.notice;
2+
3+
import com.example.Jinus.entity.notice.NoticeEntity;
4+
import org.springframework.data.jpa.repository.JpaRepository;
5+
6+
public interface NoticeRepositoryV2 extends JpaRepository<NoticeEntity, Integer> {
7+
8+
}

src/test/java/com/example/Jinus/repository/cafeteria/CampusRepositoryV2Test.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
import org.springframework.beans.factory.annotation.Autowired;
1010
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
1111
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
12-
import org.springframework.context.annotation.ComponentScan;
1312
import org.springframework.test.context.ActiveProfiles;
1413
import org.springframework.test.context.junit.jupiter.SpringExtension;
1514

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.example.Jinus.repository.notice;
2+
3+
import com.example.Jinus.entity.notice.NoticeCategoryEntity;
4+
import com.example.Jinus.repository.v2.notice.NoticeCategoryRepositoryV2;
5+
import org.junit.jupiter.api.BeforeEach;
6+
import org.junit.jupiter.api.DisplayName;
7+
import org.junit.jupiter.api.Test;
8+
import org.junit.jupiter.api.extension.ExtendWith;
9+
import org.springframework.beans.factory.annotation.Autowired;
10+
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
11+
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
12+
import org.springframework.test.context.ActiveProfiles;
13+
import org.springframework.test.context.junit.jupiter.SpringExtension;
14+
15+
import java.util.ArrayList;
16+
import java.util.List;
17+
18+
import static org.assertj.core.api.Assertions.assertThat;
19+
20+
21+
@ExtendWith(SpringExtension.class)
22+
@DataJpaTest
23+
@ActiveProfiles("test") // application-test.properties 적용
24+
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.ANY) // H2 사용
25+
public class NoticeCategoryRepositoryV2Test {
26+
27+
@Autowired
28+
private NoticeCategoryRepositoryV2 noticeCategoryRepository;
29+
30+
@BeforeEach
31+
void setUp() {
32+
noticeCategoryRepository.save(
33+
new NoticeCategoryEntity(1, 1, "취업", 12, 12, 12, "3/4"));
34+
noticeCategoryRepository.save(
35+
new NoticeCategoryEntity(2, 1, "공지", 12, 12, 12, "3/4"));
36+
noticeCategoryRepository.save(
37+
new NoticeCategoryEntity(3, 2, "공지", 12, 12, 12, "3/4"));
38+
}
39+
40+
@Test
41+
@DisplayName("학과id에 해당하는 카테고리 리스트 찾기")
42+
public void checkCategoryListById() {
43+
// given
44+
int departmentId = 1;
45+
// 예상 데이터
46+
List<NoticeCategoryEntity> categoryList = new ArrayList<>();
47+
categoryList.add(new NoticeCategoryEntity(1, 1, "취업", 12, 12, 12, "3/4"));
48+
categoryList.add(new NoticeCategoryEntity(2, 1, "공지", 12, 12, 12, "3/4"));
49+
50+
// when
51+
List<NoticeCategoryEntity> result = noticeCategoryRepository.findCategoryListByDepartmentId(departmentId);
52+
53+
// then
54+
assertThat(result).hasSize(2);
55+
assertThat(result).usingRecursiveComparison().isEqualTo(categoryList);
56+
}
57+
58+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package com.example.Jinus.repository.notice;
2+
3+
import com.example.Jinus.entity.notice.NoticeEntity;
4+
import com.example.Jinus.repository.v2.notice.NoticeRepositoryV2;
5+
import org.junit.jupiter.api.BeforeEach;
6+
import org.junit.jupiter.api.extension.ExtendWith;
7+
import org.springframework.beans.factory.annotation.Autowired;
8+
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
9+
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
10+
import org.springframework.test.context.ActiveProfiles;
11+
import org.springframework.test.context.junit.jupiter.SpringExtension;
12+
13+
@ExtendWith(SpringExtension.class)
14+
@DataJpaTest
15+
@ActiveProfiles("test") // application-test.properties 적용
16+
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.ANY) // H2 사용
17+
public class NoticeRepositoryV2Test {
18+
19+
@Autowired
20+
NoticeRepositoryV2 noticeRepositoryV2;
21+
22+
@BeforeEach
23+
void setUp() {
24+
noticeRepositoryV2.save(new NoticeEntity(1, 10, "게시물1", 12, "3/4"));
25+
noticeRepositoryV2.save(new NoticeEntity(2, 10, "게시물1", 12, "3/4"));
26+
27+
}
28+
}

src/test/java/com/example/Jinus/service/userInfo/UserServiceV2Test.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public void checkUserNotExists() {
5858
@Test
5959
@DisplayName("존재하는 사용자 학과id 찾기")
6060
public void checkExistsUserDepartmentId() {
61-
// then
61+
// given
6262
String kakaoId = "test_user_1234";
6363
int departmentId = 1;
6464

@@ -73,7 +73,7 @@ public void checkExistsUserDepartmentId() {
7373
@Test
7474
@DisplayName("존재하지 않는 사용자 학과id 찾기")
7575
public void checkDoesNotExistUserDepartmentId() {
76-
// then
76+
// given
7777
String kakaoId = "not_exist_user_1234";
7878

7979
// when

0 commit comments

Comments
 (0)