Skip to content

Commit 9ea012e

Browse files
committed
fix: 로그아웃 시 앱 배지 초기화
1 parent 088d922 commit 9ea012e

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

Application/DevLogPresentation/Sources/Root/RootFeature.swift

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,10 @@ struct RootFeature {
109109
if result {
110110
state.selectedMainTab = .home
111111
} else {
112-
return trackLoginScreenEffect()
112+
return .merge(
113+
trackLoginScreenEffect(),
114+
clearApplicationBadgeCountEffect()
115+
)
113116
}
114117
}
115118

Application/DevLogPresentation/Tests/Root/RootFeatureTests.swift

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,19 @@ struct RootFeatureTests {
3939
await verifyDidLoginedFalse(adapter: adapter, trackAnalyticsEventUseCaseSpy: trackSpy)
4040
}
4141

42+
@Test("RootFeature didLogined(false)는 앱 badge 초기화를 요청한다")
43+
func RootFeature_didLogined_false는_앱_badge_초기화를_요청한다() async {
44+
let badgeSpy = RootApplicationBadgeCountSpy()
45+
let adapter = RootStoreTestAdapter(badgeCountSpy: badgeSpy)
46+
47+
await adapter.didLogined(false)
48+
await waitUntil {
49+
badgeSpy.counts == [0]
50+
}
51+
52+
#expect(badgeSpy.counts == [0])
53+
}
54+
4255
@Test("RootFeature didLogined(true)는 기존 Root 상태관리처럼 signIn 상태를 true로 갱신하고 selectedMainTab을 home으로 되돌린다")
4356
func RootFeature_didLogined_true는_기존_Root_상태관리처럼_signIn_상태를_true로_갱신하고_selectedMainTab을_home으로_되돌린다() async {
4457
let trackSpy = RootTrackAnalyticsEventUseCaseSpy()

0 commit comments

Comments
 (0)