如何等待在单元测试异步设置,在飞镖?(How to wait for an asynchronous

2019-08-17 02:10发布

我的单元测试要求,需要异步运行的设置。 也就是说,我需要等待测试运行之前的设置来完成,但随着期货设置的交易。

Answer 1:

与DART M3的setUp函数可以选择返回一个Future 。 如果安装程序会返回一个Future,该单元测试框架将等待未来运行单个测试方法之前完成。

下面是一个例子:

group(('database') {
  var db = createDb();
  setUp(() {
    return openDatabase()
      .then((db) => populateForTests(db));
  });

  test('read', () {
    Future future = db.read('foo');
    future.then((value) {
      expect(value, 'bar');
    });
    expect(future, completes);
  });
});

了解更多关于的setUp 。



文章来源: How to wait for an asynchronous setup in a unit test, in Dart?