0

我是新的承诺,我有以下功能

var chai = require('chai');
var expect = chai.expect;

var chaiAsPromised = require('chai-as-promised');
chai.use(chaiAsPromised);

it('should do something with promises', function() {
    var blah = 'foo';

    var result = systemUnderTest();

    return expect(result).to.eventually.equal(blah);
});

为什么之前有return关键字expect,它的意义是什么,如果我们不这样做会发生什么return

4

1 回答 1

0

您必须返回承诺才能执行所有承诺链

it('should do something with promises', function() {
    const expected = "test";
    const promise = new Promise((resolve, reject) => {
        ...//Something to do
    });
    promise.then(() => {
        return expected;
    });
    return expect(promise).to.eventually.equal(expected);
});

如果您不返回承诺,则then可以在期望评估之后执行该块;

于 2017-10-10T14:06:12.247 回答