Skip to content

Instantly share code, notes, and snippets.

@svarlet
Created January 26, 2021 11:33
Show Gist options
  • Save svarlet/337c0d3234cc3ba67c7d96adf788c092 to your computer and use it in GitHub Desktop.
Save svarlet/337c0d3234cc3ba67c7d96adf788c092 to your computer and use it in GitHub Desktop.
import 'package:test/test.dart';
import 'package:mocktail/mocktail.dart';
class Demo {
void doSomething(int i) {
i + i;
}
}
class DemoDouble extends Mock implements Demo {}
class UserOfDemo {
final Demo _demo;
UserOfDemo(this._demo);
void methodThatDependsOnDemo() {
_demo.doSomething(1);
}
}
void main() {
test('it calls doSomething()', () {
final _demo = DemoDouble();
final sut = UserOfDemo(_demo);
sut.methodThatDependsOnDemo();
verify(_demo).called(#doSomething).withArgs(positional: [1]);
});
}
@felangel
Copy link

The following should work:

import 'package:test/test.dart';
import 'package:mocktail/mocktail.dart';

class Demo {
  void doSomething(int i) {
    i + i;
  }
}

class DemoDouble extends Mock implements Demo {}

class UserOfDemo {
  final Demo _demo;

  UserOfDemo(this._demo);

  void methodThatDependsOnDemo() {
    _demo.doSomething(1);
  }
}

void main() {
  test('it calls doSomething()', () {
    final _demo = DemoDouble();
    when(_demo).calls(#doSomething).thenReturn(null);
    final sut = UserOfDemo(_demo);
    sut.methodThatDependsOnDemo();
    verify(_demo).called(#doSomething).withArgs(positional: [1]);
  });
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment