Search code examples
androidunit-testingkotlinmockitoandroidx

FilesDir on mocked context Is null


I am new to unit testing and currently using Mockito for my Kotlin android application.

I use Koin for dependency injection in my view model class. I have successfully mocked out the dependencies. I pass mockedContext to my viewModel class but when calling mockedContext.filesDir it returns null.

Am I missing something?

HomeViewModelClass

init {
    directoryManager.createDirectory()
}

DirectoryManager

class DirectoryManager(val context:Context){

    fun createDirectory(){
        val filePath: String = context.filesDir.absolutePath
    }
}

HomeViewModelTest

@Mock
private lateinit var mockedContext: Context
private lateinit var homeViewModel: HomeViewModel

@Before
fun setup() {
    homeViewModel = HomeViewModel(mockedContext)
}

Getting null for context.filesDir in DirectoryManager


Solution

  • the solution for me was to use mockedApplication instead!