0

我们用 moor 生成我们的数据库实体。我们有一个数据库服务作为所有数据库访问的外观。我们有方法 Future<DatabaseEntry?> getDatabaseEntry(String entryId)。DatabaseEntry 是从 moor 生成的。

在我们的测试中,我们有这个

@GenerateMocks([DatabaseService])
void main() {...

在来自 mockito 的模拟中,我们发现:

@override
  _i10.Future<dynamic> getDatabaseEntry(String? entryId) =>

并且 android studio 正确地告诉我们

'MockDatabaseService.getDatabaseEntry' ('Future<dynamic> Function(String?)') isn't a valid override of 'DatabaseService.getDatabaseEntry' ('Future<DatabaseEntry?> Function(String)').

我们认为这是因为 Mockito 在从 moor 生成 DatabaseEntry 类之前生成了模拟。我们如何更改构建运行器的顺序,或者问题出在其他地方?

4

0 回答 0