Вам нужно смоделировать все методы, вызываемые тестируемым кодом, если он их вызывает, и зависеть от их результатов
, в вашем случае вы должны смоделировать метод getStorageDirectory()
, чтобы он возвращал какой-то результат, удовлетворяющий ваш тест
для получения дополнительной информации о том, как имитировать проверку это и это
Краткий пример того, как имитировать:
class MyRepo{
int myMethod(){
return 0;
}
}
class MockRepo extends Mock implements MyRepo{}
void main(){
MockRepo mockRepo = MockRepo();
test('should test some behaviour',
() async {
// arrange
when(mockRepo.myMethod()).thenAnswer(1);//in the test when myMethod is called it will return 1 and not 0
// act
//here put some method that will invoke myMethod on the MockRepo and not on the real repo
// assert
verify(mockRepo.myMethod());//verify that myMethod was called
},
);
}