pass-mock-object
Warns when verify, verifyNever, when or other similar invocations receive a regular object instead of a mock.
Such invocations must only be given a Mock object.
Example
❌ Bad:
void main() {
test('some test', () {
final instance = SomeClass();
// LINT: This invocation must only be given a Mock object.
// Try passing an object that extends Mock.
when(() => instance.value);
// LINT: This invocation must only be given a Mock object.
// Try passing an object that extends Mock.
verify(() => instance.value);
// LINT: This invocation must only be given a Mock object.
// Try passing an object that extends Mock.
verifyZeroInteractions(instance);
});
}
class SomeClass {
String? value;
}
✅ Good:
void main() {
test('some test', () {
final mock = _SomeMock();
when(() => mock.value);
verify(() => mock.value);
verifyZeroInteractions(mock);
});
}
class _SomeMock extends Mock implements SomeClass {}