Avoid tryEmit(), use emit()
This commit is contained in:
parent
a83952814f
commit
74048cca8f
11 changed files with 21 additions and 19 deletions
|
|
@ -48,30 +48,30 @@ class FakeNotificationTroubleshootTest(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() {
|
||||
override suspend fun reset() {
|
||||
updateState(
|
||||
name = defaultName,
|
||||
description = defaultDescription,
|
||||
status = firstStatus,
|
||||
)
|
||||
resetAction()?.let {
|
||||
_state.tryEmit(it)
|
||||
_state.emit(it)
|
||||
}
|
||||
}
|
||||
|
||||
override suspend fun quickFix(coroutineScope: CoroutineScope) {
|
||||
updateState(NotificationTroubleshootTestState.Status.InProgress)
|
||||
quickFixAction()?.let {
|
||||
_state.tryEmit(it)
|
||||
_state.emit(it)
|
||||
}
|
||||
}
|
||||
|
||||
fun updateState(
|
||||
suspend fun updateState(
|
||||
status: NotificationTroubleshootTestState.Status,
|
||||
name: String = defaultName,
|
||||
description: String = defaultDescription,
|
||||
) {
|
||||
_state.tryEmit(
|
||||
_state.emit(
|
||||
NotificationTroubleshootTestState(
|
||||
name = name,
|
||||
description = description,
|
||||
|
|
|
|||
|
|
@ -24,6 +24,8 @@ interface NotificationTroubleshootTest {
|
|||
val state: StateFlow<NotificationTroubleshootTestState>
|
||||
fun isRelevant(data: TestFilterData): Boolean = true
|
||||
suspend fun run(coroutineScope: CoroutineScope)
|
||||
fun reset()
|
||||
suspend fun quickFix(coroutineScope: CoroutineScope) {}
|
||||
suspend fun reset()
|
||||
suspend fun quickFix(coroutineScope: CoroutineScope) {
|
||||
error("Quick fix not implemented, you need to override this method in your test")
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -41,12 +41,12 @@ class NotificationTroubleshootTestDelegate(
|
|||
|
||||
val state: StateFlow<NotificationTroubleshootTestState> = _state.asStateFlow()
|
||||
|
||||
fun updateState(
|
||||
suspend fun updateState(
|
||||
status: NotificationTroubleshootTestState.Status,
|
||||
name: String = defaultName,
|
||||
description: String = defaultDescription,
|
||||
) {
|
||||
_state.tryEmit(
|
||||
_state.emit(
|
||||
NotificationTroubleshootTestState(
|
||||
name = name,
|
||||
description = description,
|
||||
|
|
@ -55,7 +55,7 @@ class NotificationTroubleshootTestDelegate(
|
|||
)
|
||||
}
|
||||
|
||||
fun reset() {
|
||||
suspend fun reset() {
|
||||
updateState(NotificationTroubleshootTestState.Status.Idle(visibleWhenIdle))
|
||||
}
|
||||
|
||||
|
|
@ -64,7 +64,7 @@ class NotificationTroubleshootTestDelegate(
|
|||
delay(fakeDelay)
|
||||
}
|
||||
|
||||
fun done(isSuccess: Boolean = true) {
|
||||
suspend fun done(isSuccess: Boolean = true) {
|
||||
updateState(
|
||||
if (isSuccess) {
|
||||
NotificationTroubleshootTestState.Status.Success
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ class NotificationTroubleshootCheckPermissionTest @Inject constructor(
|
|||
delegate.done(result)
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
|
||||
override suspend fun quickFix(coroutineScope: CoroutineScope) {
|
||||
// Do not bother about asking the permission inline, just lead the user to the settings
|
||||
|
|
|
|||
|
|
@ -54,5 +54,5 @@ class CurrentPushProviderTest @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -90,5 +90,5 @@ class NotificationTest @Inject constructor(
|
|||
notificationDisplayer.dismissDiagnosticNotification()
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -98,5 +98,5 @@ class PushLoopbackTest @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,5 +55,5 @@ class PushProvidersTest @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -61,5 +61,5 @@ class FirebaseAvailabilityTest @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ class FirebaseTokenTest @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
|
||||
override suspend fun quickFix(coroutineScope: CoroutineScope) {
|
||||
delegate.start()
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ class UnifiedPushTest @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun reset() = delegate.reset()
|
||||
override suspend fun reset() = delegate.reset()
|
||||
|
||||
override suspend fun quickFix(coroutineScope: CoroutineScope) {
|
||||
openDistributorWebPageAction.execute()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue