Я использую Mockito для тестирования приложения сервера Dart (обычный Dart, а не Flutter)
Мой код использует Process.run (…) для запуска ffprobe и получения некоторых данных о видеофайле. Я хочу протестировать метод, который вызывает Process.run, но я не хочу, чтобы он фактически запускал процесс (ffprobe не будет установлен в контейнере, в котором выполняются тесты). Есть ли способ использовать Mockito для заглушки функции stati c Process.run (…), чтобы при вызове с заданным набором параметров он возвращал значение-заглушку?
Единственный способ, которым я Можно подумать о том, чтобы передать функцию, которая по умолчанию является Process.run, но тест может пройти функцию, которая всегда возвращает значение-заглушку. Но передача этой функции усложняет код (вызов Process.run имеет несколько уровней глубины) и не использует возможности окурков Mockito, поэтому я думаю, что может быть лучший способ сделать это.
Ху go ответ на аналогичный вопрос заставляет меня думать, что, возможно, есть способ смоделировать вызовы методов на канале (?), Но setMockMethodCallHandler выглядит так, как будто это только во Flutter, а не в Dart.