# command: ./gradlew :messaging:messaging-admin-api:test --rerun-tasks --console=plain # revision: 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916 # exit: 0 BUILD SUCCESSFUL in 10s 17 actionable tasks: 17 executed name="dev.caskeleton.messaging.admin.DestructiveOperationGuardTest" tests="9" skipped="0" failures="0" errors="0" TOTAL tests=9 failures=0 errors=0 skipped=0 # 이 리프는 production 타입 24개에 대해 자체 테스트 파일이 1개(147줄, 9건)뿐이다. # 9건이 실제로 건드리는 타입: # DestructiveOperationGuard 5건 # RedriveRequest 2건 (자기 참조 금지, 배치 상한) # TopologyManifest 2건 (differencesFrom) # + 픽스처를 통해 간접 사용: HmacApprovalVerifier, ApprovalGrant, AdminApproval, # PlanDigest, VerifiedApproval, DestructiveOperation, DestinationName # # 나머지 타입의 불변식은 하류 리프 messaging-admin-runtime 의 테스트가 검증한다: # ApprovalForgeryTest 10건 (위조/불일치/4-eyes/임계 초과) # ApprovedPlanExecutionTest 11건 (만료/토폴로지 변경/루프 승인/결과 정산) # AdminOperationJournalTest (리스, 재개, 펜싱) # TopologyValidatorTest (BLOCKING/ADVISORY, requireAcceptable, requireSafeFor) # => SSOT 소유 리프가 자기 불변식의 대부분을 하류 리프에서 검증받는 구조다.