単体Test時に、ObjectをMockしたい時があったのでメモ。
class MainViewModel : ViewModel() {
private val _date = MutableLiveData<String>()
val date: LiveData<String>
get() = _date
fun fetchDate() {
val sdf = SimpleDateFormat("yyyy/MM/dd HH:mm", Locale.JAPAN)
_date.value = sdf.format(DateObj.getCurrent())
}
}
上記のViewModelをTestするときに、DataObjをMockしてみる。
@Before
fun beforeTests() {
mockkObject(DateObj)
every { DateObj.getCurrent() } returns Data()
}