Skip to content

[TEST] system 도메인 테스트 코드 작성 #76 - #77

Merged
hyun030514 merged 1 commit into
developfrom
test/system
Aug 4, 2026
Merged

hyun030514 merged 1 commit into
developfrom
test/system

Conversation

@CallmeEterHist

@CallmeEterHist CallmeEterHist commented Aug 4, 2026 •

Copy link
Copy Markdown
Member

📋 PR 타입

해당하는 타입을 선택해 주세요 (복수 선택 가능)

  • feature — 새로운 기능 추가
  • fix — 버그 수정
  • style — 코드 스타일 수정 (로직 변경 없음)
  • refactor — 리팩토링
  • docs — 문서 수정
  • test — 테스트 코드
  • design — UI/UX 변경
  • chore — 설정/빌드 작업
  • merge

🗂 작업 영역

  • 워크벤치 — 회의 · 캡처 · AI검토 · 회의실
  • 업무 — 보드 · 액션 · 프로젝트 · 인수인계
  • 조직 — 역할별 대시보드 · 사원/회의실 관리 · 구독
  • 공유 셸 · 디자인 시스템 ⚠️ (셸 담당자만, 별도 PR)
  • 공통 · 인프라

🙋 관련 역할

  • OWNER (대표)
  • ADMIN (관리자)
  • LEADER (팀장)
  • MEMBER (사원)
  • SYSTEM (서비스 운영자 — 확장, 데모 제외)
  • 공통

📝 작업 내용

무엇을 · 왜 바꿨는지 작성해 주세요

  • features/system에 테스트 40개(5 suites) 추가 — onboarding 스타일(순수 로직 + 핵심 컴포넌트 RTL)
  • server.test.ts: 키워드 부분일치·대소문자 무시, 규모+상태 복합 필터, 범위 밖 페이지 당김, 격리막 목 통과
  • actions.test.ts: 승인·반려 목록 제거+redirect, 정지/해제 상태변경+revalidatePath, 공지 서버측 빈값 가드
  • mock/billing.test.ts: 구독 파생(항상 5건·미납 우선·요약 미납수=목록 소스 일치·Team 금액=인원×단가)
  • notice-compose-card.test.tsx: 채우기 전 발행 잠금, 성공 안내, 실패 시 성공한 척 안 함(정직성)

✅ 작업 체크리스트

기본

  • 브랜치 명명 규칙 준수 (feature/meeting-capture#12 꼴, base develop)
  • 커밋 컨벤션 준수 (type: 제목 #{이슈번호})
  • 아래 Closes # 에 이슈 번호 기입
  • 불필요한 console · 주석 처리된 코드 제거
  • 민감 정보 없음 (토큰 · 키 · .env)

Z 필수

  • 🔐 권한 2축 검사 — 테스트 대상 액션이 서버측 검증(공지 빈값 가드)을 갖는지 확인
  • 🧬 zod — 해당 없음(테스트만 추가, 스키마 변경 없음)
  • 🕵️ 정직성 — 목/미구현 분기는 격리막 목 경로로만 검증, 발송 실패 시 성공 안내 안 뜸을 테스트로 고정
  • 🎨 디자인 토큰 사용 — 해당 없음

품질

  • ⚡ 최적화 — 해당 없음
  • ♿ a11y — 컴포넌트 테스트가 getByRole·getByLabelText로 접근성 트리에 의존
  • ♻️ 재사용 확인 — 기존 format.test.ts·onboarding 테스트 패턴 재사용
  • 🧪 loading / error / empty 3상태 — 해당 없음(로직·상호작용 테스트)
  • 브라우저 전용 API(STT · 녹음) 사용 — 해당 없음

🔗 연관 이슈

Closes #76


📸 스크린샷 (선택)

Before After

💬 리뷰 포인트

리뷰어가 중점적으로 봐야 할 부분

  • 목 전역 상태 간섭 차단: 액션 테스트는 서로 다른 id + afterEach 복원 → 전체 219 tests 동시 실행에서 누수 없음
  • server-only/next/cache/next/navigation 목 대체 방식이 적절한지
  • 62개·미납 건수를 하드코딩 대신 listMockCompanies()에서 계산 → 목 변경에 안 깨지는지

📝 추가 메모

  • npx jest src/features/system → 5 passed / 40 tests
  • npx jest (전체) → 19 suites / 219 tests 통과

Summary by CodeRabbit

  • 테스트
    • 기업 승인·반려, 정지·해제, 미납 안내, 파이프라인 재처리 및 공지 발행의 성공·실패와 입력 검증을 추가로 확인합니다.
    • 공지 작성 화면의 입력 조건, 발행 성공·실패 안내 및 전달 값을 검증합니다.
    • 결제 목록의 미납 우선 정렬, 가입일순 정렬, 플랜별 금액과 결제일 규칙을 검증합니다.
    • 기업 검색·필터·페이지네이션, 상세 조회와 대시보드 관련 데이터 조회 동작을 검증합니다.

@coderabbitai

coderabbitai Bot commented Aug 4, 2026 •

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 60e9c012-0610-4b27-915a-da33ebb561fe

📥 Commits

Reviewing files that changed from the base of the PR and between 10b4127 and bfb4a06.

📒 Files selected for processing (4)
  • src/features/system/actions.test.ts
  • src/features/system/components/notice-compose-card.test.tsx
  • src/features/system/mock/billing.test.ts
  • src/features/system/server.test.ts

📝 Walkthrough

Walkthrough

System 도메인에 서버 조회·액션, 결제 목 데이터, 공지 작성 컴포넌트의 테스트를 추가했다. 성공·실패, 검증, 페이지네이션, 필터, 파생 데이터 동작을 검증한다.

Changes

System 도메인 테스트

Layer / File(s) Summary
서버 조회와 결제 목 데이터 검증
src/features/system/server.test.ts, src/features/system/mock/billing.test.ts
기업 조회의 페이지네이션·검색·필터와 상세 조회를 검증한다. 승인 대기 및 목 데이터 반환을 확인한다. 구독 수, 미납 우선 정렬, 플랜별 금액과 결제일을 검증한다.
서버 액션 동작 검증
src/features/system/actions.test.ts
기업 승인·반려·정지·해제, 미납 안내, 파이프라인 재처리, 공지 발행의 성공·실패와 경로 동작을 검증한다.
공지 작성 컴포넌트 발행 흐름
src/features/system/components/notice-compose-card.test.tsx
제목·내용 입력 전 발행 버튼 상태와 유효한 입력의 액션 호출을 검증한다. 성공 안내 표시와 실패 시 미표시를 확인한다.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • Z-Groupware/FRONTEND#75: actions.ts, NoticeComposeCard, 결제 목 데이터, server.ts 동작을 직접 테스트한다.
  • Z-Groupware/FRONTEND#73: publishNoticeAction과 NoticeComposeCard 발행 흐름을 테스트한다.
  • Z-Groupware/FRONTEND#71: 서버 액션, 서버 조회, 결제 목 데이터, 파이프라인 재처리 동작을 테스트한다.

Suggested reviewers: hyun030514

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 SYSTEM 도메인의 테스트 코드 추가라는 주요 변경 사항을 명확하게 설명합니다.
Linked Issues check ✅ Passed 서버 조회·액션·결제 파생 로직과 공지 컴포넌트 테스트가 이슈 #76의 요구 사항을 충족합니다.
Out of Scope Changes check ✅ Passed 변경 사항은 모두 features/system의 서버 로직, 목 데이터, 공지 컴포넌트 테스트 범위에 포함됩니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch test/system

Comment @coderabbitai help to get the list of available commands.

@hyun030514 hyun030514 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

확인했습니다.

@hyun030514
hyun030514 merged commit 291367f into develop Aug 4, 2026
2 checks passed
@github-project-automation github-project-automation Bot moved this from Todo to Done in Z Aug 4, 2026
@hyun030514 hyun030514 changed the title [TEST] system 도메인 테스트 코드 작성 test: system 도메인 테스트 코드 작성 #76 Aug 13, 2026
@hyun030514 hyun030514 changed the title test: system 도메인 테스트 코드 작성 #76 [TEST] system 도메인 테스트 코드 작성 #76 Aug 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[TEST] system 도메인 테스트 코드 작성

2 participants