В тот момент, когда вы наследуете AndroidViewModel
, ваш класс становится менее тестируемым, поскольку вы зависите от Android фреймворка. Кроме того, в своем фрагменте кода B вы утратили возможность вставлять двойной тест для вашего dao
, что делает тестирование еще сложнее.
В заключение постарайтесь избегать использования рамочных классов и практикуйте внедрение зависимостей (вручную или с помощью DI-фреймворка, такого как Dagger, это не имеет значения). Так что ваш фрагмент кода А предпочтительнее.