From 42ea5869e4e6ce262ffc6c4df9248fa7178b4dc6 Mon Sep 17 00:00:00 2001 From: Gilpop8663 Date: Thu, 26 Oct 2023 15:48:10 +0900 Subject: [PATCH 1/4] =?UTF-8?q?chore:=20(#824)=20=EC=A3=BC=EC=84=9D=20?= =?UTF-8?q?=EC=B2=98=EB=A6=AC=EB=90=9C=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20?= =?UTF-8?q?=EC=BD=94=EB=93=9C=20=EB=B3=B5=EA=B5=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../__test__/hooks/usePagination.test.tsx | 242 +++++++++--------- 1 file changed, 119 insertions(+), 123 deletions(-) diff --git a/frontend/__test__/hooks/usePagination.test.tsx b/frontend/__test__/hooks/usePagination.test.tsx index f0ed18de5..ab38c2850 100644 --- a/frontend/__test__/hooks/usePagination.test.tsx +++ b/frontend/__test__/hooks/usePagination.test.tsx @@ -1,131 +1,127 @@ -// import React, { ReactNode } from 'react'; +import React, { ReactNode } from 'react'; -// import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; -// import { renderHook, waitFor } from '@testing-library/react'; -// import { act } from 'react-dom/test-utils'; +import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; +import { renderHook, waitFor } from '@testing-library/react'; +import { act } from 'react-dom/test-utils'; -// import { usePagination } from '@hooks'; +import { usePagination } from '@hooks'; -// const queryClient = new QueryClient(); +const queryClient = new QueryClient(); -// const wrapper = ({ children }: { children: ReactNode }) => ( -// {children} -// ); +const wrapper = ({ children }: { children: ReactNode }) => ( + {children} +); describe('페이지 버튼을 눌러 공지 사항 리스트를 불러오는 지 확인한다.', () => { - test('임시 테스트', () => { - const tmp = 1; - expect(tmp).toBe(1); + test('초기 설정으로는 0 페이지를 불러온다.', async () => { + const { result } = renderHook(() => usePagination(), { + wrapper, + }); + + waitFor(() => { + expect(result.current.page).toBe(0); + }); }); - // test('초기 설정으로는 0 페이지를 불러온다.', async () => { - // const { result } = renderHook(() => usePagination(), { - // wrapper, - // }); - - // waitFor(() => { - // expect(result.current.page).toBe(0); - // }); - // }); - - // test('초기 페이지를 인자를 넣어 설정할 수 있다.', async () => { - // const { result } = renderHook(() => usePagination(5), { - // wrapper, - // }); - - // waitFor(() => { - // expect(result.current.page).toBe(5); - // }); - // }); - - // test('현재 페이지를 3으로 설정했을 때 3페이지를 데이터만 불러온다. 클라이언트 측에서 3으로 설정했어도 서버로는 2를 보내야 하기 때문에 현재 페이지는 2로 설정된다.', async () => { - // const { result } = renderHook(() => usePagination(), { - // wrapper, - // }); - - // act(() => { - // result.current.setPage(3); - // }); - - // waitFor(() => { - // expect(result.current.page).toBe(2); - // }); - // }); - - // test.each([ - // [0, 5, 5], - // [0, 2, 2], - // [0, 8, 8], - // [16, 8, 24], - // ])( - // '현재 페이지가 %s이고, 사이즈가 %s라면 다음 페이지를 불러올 때 현재 페이지의 시작 페이지 번호 + %s 을 하여 불러온다.', - // (currentPage, size, expected) => { - // const { result } = renderHook(() => usePagination(currentPage, size), { - // wrapper, - // }); - - // const totalPage = 10; - - // waitFor(() => { - // result.current.fetchNextPage(totalPage); - - // expect(result.current.page).toBe(expected); - // }); - // } - // ); - - // test.each([ - // [0, 0], - // [7, 0], - // [7, 5], - // [12, 10], - // [15, 15], - // ])( - // '현재 페이지가 %s이고, 이전의 페이지를 불러올 때 현재 시작 페이지 - 5을 한 값이 %s이다.', - // (currentPage, expected) => { - // const { result } = renderHook(() => usePagination(currentPage), { - // wrapper, - // }); - - // waitFor(() => { - // result.current.fetchPrevPage(); - - // expect(result.current.page).toBe(expected); - // }); - // } - // ); - - // test.each([ - // [0, 6, true], - // [5, 15, true], - // [5, 10, false], - // [5, 5, false], - // [0, 5, false], - // ])( - // '현재 페이지 %s이고, 전체 페이지가 %s일 때 결과는 %s이다. 전체 페이지가 현재 페이지 +5를 한 값보다 크다면 true, 작다면 false를 반환한다.', - // (currentPage, totalPage, expected) => { - // const { result } = renderHook(() => usePagination(currentPage), { - // wrapper, - // }); - - // expect(result.current.checkNextPage(totalPage)).toBe(expected); - // } - // ); - - // test.each([ - // [6, 0, [1, 2, 3, 4, 5]], - // [15, 14, [11, 12, 13, 14, 15]], - // [4, 3, [1, 2, 3, 4]], - // [23, 20, [21, 22, 23]], - // [2, 0, [1, 2]], - // [10, 3, [1, 2, 3, 4, 5]], - // ])( - // '전체 페이지가 %s이고, 현재 페이지가 %s라면 페이지 리스트는 %s를 반환한다. 현재 페이지는 0,1,2 와 같이 0으로 시작한다.', - // (totalPage, currentPage, expected) => { - // const { result } = renderHook(() => usePagination(currentPage), { - // wrapper, - // }); - - // expect(result.current.getPageNumberList(totalPage)).toEqual(expected); - // } - // ); + + test('초기 페이지를 인자를 넣어 설정할 수 있다.', async () => { + const { result } = renderHook(() => usePagination(5), { + wrapper, + }); + + waitFor(() => { + expect(result.current.page).toBe(5); + }); + }); + + test('현재 페이지를 3으로 설정했을 때 3페이지를 데이터만 불러온다. 클라이언트 측에서 3으로 설정했어도 서버로는 2를 보내야 하기 때문에 현재 페이지는 2로 설정된다.', async () => { + const { result } = renderHook(() => usePagination(), { + wrapper, + }); + + act(() => { + result.current.setPage(3); + }); + + waitFor(() => { + expect(result.current.page).toBe(2); + }); + }); + + test.each([ + [0, 5, 5], + [0, 2, 2], + [0, 8, 8], + [16, 8, 24], + ])( + '현재 페이지가 %s이고, 사이즈가 %s라면 다음 페이지를 불러올 때 현재 페이지의 시작 페이지 번호 + %s 을 하여 불러온다.', + (currentPage, size, expected) => { + const { result } = renderHook(() => usePagination(currentPage, size), { + wrapper, + }); + + const totalPage = 10; + + waitFor(() => { + result.current.fetchNextPage(totalPage); + + expect(result.current.page).toBe(expected); + }); + } + ); + + test.each([ + [0, 0], + [7, 0], + [7, 5], + [12, 10], + [15, 15], + ])( + '현재 페이지가 %s이고, 이전의 페이지를 불러올 때 현재 시작 페이지 - 5을 한 값이 %s이다.', + (currentPage, expected) => { + const { result } = renderHook(() => usePagination(currentPage), { + wrapper, + }); + + waitFor(() => { + result.current.fetchPrevPage(); + + expect(result.current.page).toBe(expected); + }); + } + ); + + test.each([ + [0, 6, true], + [5, 15, true], + [5, 10, false], + [5, 5, false], + [0, 5, false], + ])( + '현재 페이지 %s이고, 전체 페이지가 %s일 때 결과는 %s이다. 전체 페이지가 현재 페이지 +5를 한 값보다 크다면 true, 작다면 false를 반환한다.', + (currentPage, totalPage, expected) => { + const { result } = renderHook(() => usePagination(currentPage), { + wrapper, + }); + + expect(result.current.checkNextPage(totalPage)).toBe(expected); + } + ); + + test.each([ + [6, 0, [1, 2, 3, 4, 5]], + [15, 14, [11, 12, 13, 14, 15]], + [4, 3, [1, 2, 3, 4]], + [23, 20, [21, 22, 23]], + [2, 0, [1, 2]], + [10, 3, [1, 2, 3, 4, 5]], + ])( + '전체 페이지가 %s이고, 현재 페이지가 %s라면 페이지 리스트는 %s를 반환한다. 현재 페이지는 0,1,2 와 같이 0으로 시작한다.', + (totalPage, currentPage, expected) => { + const { result } = renderHook(() => usePagination(currentPage), { + wrapper, + }); + + expect(result.current.getPageNumberList(totalPage)).toEqual(expected); + } + ); }); From 69e482c65be4200066517ffeff5db618afc40636 Mon Sep 17 00:00:00 2001 From: Gilpop8663 Date: Thu, 26 Oct 2023 15:51:10 +0900 Subject: [PATCH 2/4] =?UTF-8?q?fix:=20(#825)=20=EB=A1=9C=EA=B7=B8=EC=9D=B8?= =?UTF-8?q?=20=EB=B2=84=ED=8A=BC=20=EC=98=AC=EB=B0=94=EB=A5=B4=EA=B2=8C=20?= =?UTF-8?q?=EB=B3=B4=EC=9D=B4=EB=8F=84=EB=A1=9D=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/pages/auth/LoginPage/MobileLogin/style.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/frontend/src/pages/auth/LoginPage/MobileLogin/style.ts b/frontend/src/pages/auth/LoginPage/MobileLogin/style.ts index f353549ea..393e39066 100644 --- a/frontend/src/pages/auth/LoginPage/MobileLogin/style.ts +++ b/frontend/src/pages/auth/LoginPage/MobileLogin/style.ts @@ -38,6 +38,5 @@ export const GuestButton = styled.button` `; export const KaKaoImage = styled.img` - width: 100%; height: 40px; `; From e0b5638d10405d337f94268c93b496ac0bd51f2d Mon Sep 17 00:00:00 2001 From: Gilpop8663 Date: Thu, 26 Oct 2023 15:57:51 +0900 Subject: [PATCH 3/4] =?UTF-8?q?fix:=20(#824)=20safari=EC=97=90=EC=84=9C=20?= =?UTF-8?q?=EC=9D=B4=EB=AF=B8=EC=A7=80=20=ED=99=95=EB=8C=80=20=EC=B0=BD?= =?UTF-8?q?=EC=9D=B4=20=EB=82=98=EC=98=A4=EB=8F=84=EB=A1=9D=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/common/ImageZoomModal/style.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/frontend/src/components/common/ImageZoomModal/style.ts b/frontend/src/components/common/ImageZoomModal/style.ts index ff90d63d4..4fa9fac74 100644 --- a/frontend/src/components/common/ImageZoomModal/style.ts +++ b/frontend/src/components/common/ImageZoomModal/style.ts @@ -20,9 +20,6 @@ export const Dialog = styled.dialog` export const Container = styled.div` position: relative; - - width: 100%; - height: 100%; `; export const HiddenCloseButton = styled.button` From ec1e095857020e1d839c3192920c72629064c330 Mon Sep 17 00:00:00 2001 From: Gilpop8663 Date: Thu, 26 Oct 2023 16:02:45 +0900 Subject: [PATCH 4/4] =?UTF-8?q?fix:=20(#823)=20=EC=B9=B4=ED=85=8C=EA=B3=A0?= =?UTF-8?q?=EB=A6=AC=EA=B0=80=20=EC=84=A0=ED=83=9D=EC=A7=80=EC=97=90=20?= =?UTF-8?q?=EA=B0=80=EB=A0=A4=EC=A7=80=EB=8A=94=20=EB=B2=84=EA=B7=B8=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/components/common/MultiSelect/style.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/frontend/src/components/common/MultiSelect/style.ts b/frontend/src/components/common/MultiSelect/style.ts index 686b24f73..7d13c5cbd 100644 --- a/frontend/src/components/common/MultiSelect/style.ts +++ b/frontend/src/components/common/MultiSelect/style.ts @@ -14,6 +14,8 @@ export const Container = styled.div` @media (min-width: ${theme.breakpoint.sm}) { font: var(--text-body); } + + z-index: 1; `; export const Wrapper = styled.div`