你如何在 Typescript Mocha 单元测试中编写对象文字行覆盖?

How do you write object literal line coverage in Typescript Mocha unit-test?

潜在客户: 使用 MochaChai.

使用打字稿和编写单元测试的新手

问题 关于如何使用不在 class 中的对象文字在单元​​测试中获得 100% 行覆盖率的任何提示?尽可能避免静态化,但单元测试仍然必须达到 100% 才能通过。

// constants.ts
export default {
    path: “./example”,
    name: “Example Name”
}
// constants.spec.ts
// How do I unit test ‘export default’ for 100% line coverage?
// I have tried

import chai from "chai";
import * as constants from “./constants.ts”;

describe(“constants”, () => {
    it(“Constants literals should have a length of 2“, () => {
        chai.expect(constants.default.length).equal(2); 
    });
});

// The mocha test succeeds, but the line still says it hasn’t been tested.

我想我找到了答案,但我确信在 Typescript 中有更简单的方法来使用和测试文字。

describe("Constants", async () => {
    it("can be created", async () => {
        const obj = constants.default;
        chai.should().exist(obj);
    });
});

Typescript Mocha Chai unit-test 100% line coverage