flutter_mvu_test 1.0.2 copy "flutter_mvu_test: ^1.0.2" to clipboard
flutter_mvu_test: ^1.0.2 copied to clipboard

Test utilities for flutter_mvu—e.g., a TestModelController with synchronous dispatch.

example/lib/main.dart

import 'package:flutter_mvu/flutter_mvu.dart';
import 'package:flutter_mvu_test/flutter_mvu_test.dart';
import 'package:flutter_test/flutter_test.dart';

class Counter {
  int count = 0;
}

class IncrementEvent implements Event<Counter> {
  @override
  void updateModel(Counter model, _, __) => model.count++;
}

void main() {
  test('increment count via event', () async {
    //arrange
    final testController = TestModelController(Counter());
    expect(testController.model.count, 0);

    //act
    await testController.dispatch(IncrementEvent());

    //assert
    expect(testController.model.count, 1);
    expect(testController.emittedOutEvents, isEmpty);
  });

  test('increment sequence', () async {
    //arrange
    final testController = TestModelController(Counter());
    // sequence of two increments

    //act
    await testController.batchDispatch([
      IncrementEvent(),
      IncrementEvent(),
    ]);

    //assert
    expect(testController.model.count, 2);
    expect(testController.emittedOutEvents, isEmpty);
  });
}
1
likes
160
points
34
downloads

Publisher

unverified uploader

Weekly Downloads

Test utilities for flutter_mvu—e.g., a TestModelController with synchronous dispatch.

Repository (GitHub)

Documentation

API reference

License

MIT (license)

Dependencies

flutter_mvu

More

Packages that depend on flutter_mvu_test