Coverage Summary for Class: ArchiveBudgetUseCase (com.georgeci.moneysurfer.domain.usecase)

Class Class, % Method, % Branch, % Line, % Instruction, %
ArchiveBudgetUseCase 100% (1/1) 100% (2/2) 100% (3/3) 100% (11/11)


 package com.georgeci.moneysurfer.domain.usecase
 
 import com.georgeci.moneysurfer.domain.primitives.BudgetId
 import com.georgeci.moneysurfer.domain.repositories.BudgetRepository
 import org.koin.core.annotation.Single
 
 /**
  * Archives or restores a budget. The row stays in the database — an archived budget drops
  * out of the main list but keeps its history, so restoring it brings the numbers back.
  */
 @Single
 class ArchiveBudgetUseCase(
     private val budgetRepository: BudgetRepository,
 ) {
 
     suspend operator fun invoke(id: BudgetId, isActive: Boolean) {
         budgetRepository.setActive(id, isActive)
     }
 }