NodeJS Mocha测试 - 在钩子

时间:2017-12-19 11:26:17

标签: node.js scope global-variables mocha hook

我有一个基础测试类,我在其中定义应该在所有测试文件中使用的全局数据。在相应的测试文件中,我导入了所需的数据集。

在我的测试套件中,我有before()after()个钩子。在before()函数中,我想创建一个新对象,其中包含我在文件顶部导入的数据。但是,回调挂钩函数中的数据未定义。

我觉得令人困惑的是,我可以访问测试用例中的数据:

import { app, token, storeData, cartData } from "./BaseTest.test";

describe("Test Cart Controller", () => {

    before(function(done) {
        // create test store for carts to be associated with
        new Store(storeData).save().then((store: any) => {           // UNDEFINED HERE
            cartData.store = store._id;
            done();
        });
    });


    describe("tests creation of carts", () => {
       it("creating with POST to /carts should yield 201", (done) => {
        chai.request(app)                                           // VALID HERE THOUGH
            .post("/api/carts")
            .send(cartData)
            .set({"Authorization": "Bearer " + token })
            .end(function (err: Error, res: Response) {
                expect(res).to.have.status(201);
                done();
            }
       });
    });
});

有人可以帮忙吗?

0 个答案:

没有答案