如何使用mocha执行`around`或`aroundEach`?

时间:2014-12-01 00:52:16

标签: callback mocha

Mocha提供beforebeforeEachafterafterEach。我正在寻找类似aroundaroundEach的内容,但我在mocha文档中找不到任何关于它的内容。

我的用例是我想在数据库事务中包装每个测试,在每个测试运行后执行回滚。我想要做这样的事情:

aroundEach(function (testRunner, done) {
  sequelize.transaction().next(function (t) {
    testRunner();
    t.rollback().done(done);
  });
});

作为替代/解决方法,这样的东西作为选项存在(尽管感觉不太干净):

beforeEach(function (done) {
  sequelize.transaction().next((t) => {
    this.transaction = t;
    done();
  });
});

afterEach(function (done) {
  this.transaction.rollback().done(done);
});

0 个答案:

没有答案