Closed EhiltonKazuo closed 4 months ago
Describe the bug When i use two parameters (internal and external) the stub can't track the result and returns this error:
type 'Null' is not a subtype of type 'Entity'
Follow this example
To Reproduce
import 'package:equatable/equatable.dart'; import 'package:mocktail/mocktail.dart'; import 'package:test/test.dart'; class UsecaseParams { final double value; UsecaseParams(this.value); } class PresenterParams { final double value; PresenterParams(this.value); } class Entity extends Equatable { final double value; const Entity({required this.value}); @override List<Object?> get props => [value]; } abstract interface class Usecase { Entity call(UsecaseParams params); } class Presenter { final Usecase usecase; Presenter(this.usecase); void call(PresenterParams params) { usecase(UsecaseParams(params.value)); } } class UsecaseMock extends Mock implements Usecase {} void main() { late Presenter sut; late UsecaseMock usecase; late double value; setUp(() { usecase = UsecaseMock(); sut = Presenter(usecase); value = 10; }); test('Should call Usecase with correct values', () { when(() => usecase(UsecaseParams(value))) .thenReturn(const Entity(value: 10)); sut(PresenterParams(value)); verify(() => usecase(UsecaseParams(value))).called(1); }); }
Describe the bug When i use two parameters (internal and external) the stub can't track the result and returns this error:
type 'Null' is not a subtype of type 'Entity'
Follow this example
To Reproduce