У меня есть основной пакет, в котором я определяю все интерфейсы своих репозиториев, включая реализацию этих репозиториев в памяти.
Теперь я хотел бы поделиться всем своим модульным тестом с другими пакетами, где я могу просто поменять местами реализацию.
/// this would be in my core package
void runRepoTests(MyRepository myRepositoryImpl) {
test('some behavior test',(){
...
});
}
/// in some other package
import'package:core/core_test.dart';
void main() {
test('RestRepositoryTest',() {
final myRepo = RestRepository();
runRepoTests(myRepo);
});
}