From 1ebf49472b88f45bd65b0dce0bc54cd3171f9a5f Mon Sep 17 00:00:00 2001 From: oungsi2000 Date: Mon, 24 Aug 2026 23:48:12 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=98=A8=EB=B3=B4=EB=94=A9=20=ED=85=8C?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8=20=EC=BB=B4=ED=8C=8C=EC=9D=BC=20=EC=97=90?= =?UTF-8?q?=EB=9F=AC=20=EB=B0=8F=20ktlint=20=EC=9C=84=EB=B0=98=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 OnboardingState의 isSubmitting 필드가 submitState(OnboardingSubmitState)로 바뀐 이후 OnboardingViewModelTest가 갱신되지 않아 develop 빌드의 lint-and-test가 컴파일 에러로 실패하고 있었다. 테스트를 현재 상태 모델에 맞게 수정하고, 성공 경로에서 함께 발생하는 PermissionRequest 사이드이펙트 검증을 추가했다. 같은 파일의 ktlintMainSourceSetCheck 위반도 함께 정리. Co-Authored-By: Claude Sonnet 5 Claude-Session: https://claude.ai/code/session_015do5t4ThrkmdyfYb4gkbCq --- .../com/kikidan/onboarding/OnboardingViewModel.kt | 7 ++++++- .../kikidan/onboarding/OnboardingViewModelTest.kt | 12 +++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/feature/onboarding/src/main/java/com/kikidan/onboarding/OnboardingViewModel.kt b/feature/onboarding/src/main/java/com/kikidan/onboarding/OnboardingViewModel.kt index 5281937c..c20898e9 100644 --- a/feature/onboarding/src/main/java/com/kikidan/onboarding/OnboardingViewModel.kt +++ b/feature/onboarding/src/main/java/com/kikidan/onboarding/OnboardingViewModel.kt @@ -68,7 +68,12 @@ class OnboardingViewModel reduce { state.copy(submitState = OnboardingSubmitState.Success) } postSideEffect(OnboardingSideEffect.PermissionRequest) }.onFailure { e -> - reduce { state.copy(submitState = OnboardingSubmitState.Failure, step = OnboardingStep.EXTRA_QUESTION) } + reduce { + state.copy( + submitState = OnboardingSubmitState.Failure, + step = OnboardingStep.EXTRA_QUESTION, + ) + } postSideEffect(OnboardingSideEffect.Failure(e)) } } diff --git a/feature/onboarding/src/test/java/com/kikidan/onboarding/OnboardingViewModelTest.kt b/feature/onboarding/src/test/java/com/kikidan/onboarding/OnboardingViewModelTest.kt index cfeb6fa3..056c03b6 100644 --- a/feature/onboarding/src/test/java/com/kikidan/onboarding/OnboardingViewModelTest.kt +++ b/feature/onboarding/src/test/java/com/kikidan/onboarding/OnboardingViewModelTest.kt @@ -14,6 +14,7 @@ import com.kikidan.onboarding.model.OnboardingSheet import com.kikidan.onboarding.model.OnboardingSideEffect import com.kikidan.onboarding.model.OnboardingState import com.kikidan.onboarding.model.OnboardingStep +import com.kikidan.onboarding.model.OnboardingSubmitState import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.StandardTestDispatcher @@ -159,8 +160,9 @@ class OnboardingViewModelTest { ) viewModel().test(this, initialState = initial) { containerHost.confirmComplete(onboardingToken) - expectState { copy(isSubmitting = true, step = OnboardingStep.COMPLETE) } - expectState { copy(isSubmitting = false, step = OnboardingStep.COMPLETE) } + expectState { copy(submitState = OnboardingSubmitState.Loading, step = OnboardingStep.COMPLETE) } + expectState { copy(submitState = OnboardingSubmitState.Success, step = OnboardingStep.COMPLETE) } + expectSideEffect(OnboardingSideEffect.PermissionRequest) } } @@ -177,7 +179,7 @@ class OnboardingViewModelTest { birthTime = BirthTime.JA, lifeStage = Job.STUDENT, relationshipStatus = RelationshipStatus.SOLO, - isSubmitting = true, + submitState = OnboardingSubmitState.Loading, ) viewModel().test(this, initialState = initial) { containerHost.confirmComplete(onboardingToken) @@ -204,8 +206,8 @@ class OnboardingViewModelTest { ) viewModel().test(this, initialState = initial) { containerHost.confirmComplete(onboardingToken) - expectState { copy(isSubmitting = true, step = OnboardingStep.COMPLETE) } - expectState { copy(isSubmitting = false, step = OnboardingStep.EXTRA_QUESTION) } + expectState { copy(submitState = OnboardingSubmitState.Loading, step = OnboardingStep.COMPLETE) } + expectState { copy(submitState = OnboardingSubmitState.Failure, step = OnboardingStep.EXTRA_QUESTION) } expectSideEffect(OnboardingSideEffect.Failure(error)) } }