Coverage Summary for Class: LabelRepositoryImpl (com.stslex93.notes.core.label.repository)

Class Method, % Branch, % Line, % Instruction, %
LabelRepositoryImpl 0% (0/5) 0% (0/6) 0% (0/52)
LabelRepositoryImpl$addLabel$2 0% (0/1) 0% (0/1) 0% (0/16)
LabelRepositoryImpl$getAllLabels$2 0% (0/1) 0% (0/1) 0% (0/16)
LabelRepositoryImpl$removeLabel$2 0% (0/1) 0% (0/1) 0% (0/14)
LabelRepositoryImpl$searchLabels$$inlined$getPagingLabels$1 0% (0/1)
Total 0% (0/9) 0% (0/9) 0% (0/98)


 package com.stslex93.notes.core.label.repository
 
 import androidx.paging.PagingData
 import com.stslex93.notes.core.database.label.LabelDao
 import com.stslex93.notes.core.label.model.LabelDataMapper.toData
 import com.stslex93.notes.core.label.model.LabelDataMapper.toEntity
 import com.stslex93.notes.core.label.model.LabelDataModel
 import com.stslex93.notes.core.label.repository.LabelPagerExt.getPagingLabels
 import kotlinx.coroutines.Dispatchers
 import kotlinx.coroutines.flow.Flow
 import kotlinx.coroutines.withContext
 import javax.inject.Inject
 import javax.inject.Singleton
 
 @Singleton
 class LabelRepositoryImpl @Inject constructor(
     private val dao: LabelDao
 ) : LabelRepository {
 
     override suspend fun removeLabel(uuid: String) {
         withContext(Dispatchers.IO) {
             dao.removeLabel(uuid)
         }
     }
 
     override suspend fun addLabel(label: LabelDataModel) {
         withContext(Dispatchers.IO) {
             dao.addLabel(label.toEntity())
         }
     }
 
     override suspend fun getAllLabels(
         uuids: Set<String>
     ): Set<LabelDataModel> = withContext(Dispatchers.IO) {
         dao.getLabels(uuids).map { it.toData() }.toSet()
     }
 
     override fun searchLabels(
         query: String
     ): Flow<PagingData<LabelDataModel>> = getPagingLabels {
         dao.search(query)
     }
 }