Coverage Summary for Class: SyncState (com.georgeci.moneysurfer.sync.api)

Class Method, % Branch, % Line, % Instruction, %
SyncState$Idle 100% (1/1) 100% (1/1) 100% (2/2)
SyncState$Queued 100% (1/1) 100% (1/1) 100% (7/7)
SyncState$Running 100% (1/1) 100% (5/5) 100% (22/22)
Total 100% (3/3) 100% (7/7) 100% (31/31)


 package com.georgeci.moneysurfer.sync.api
 
 /**
  * Global coordinator state — only live activity.
  * Terminal outcomes (success / fail / cancel) live in [LastSyncOutcome].
  * See SyncCoordinatorFAQ.md №10.
  */
 sealed interface SyncState {
     data object Idle : SyncState
     data class Queued(val count: Int) : SyncState
     data class Running(
         val requestId: SyncRequestId,
         val reasons: Set<SyncReason>,
         val scope: SyncScope,
         val currentStep: SyncStep,
     ) : SyncState
 }