单元测试And16逻辑门

时间:2014-11-17 19:17:40

标签: javascript unit-testing jasmine boolean-logic

我有一个And和逻辑门的javascript表示:

function and(a, b) {
    return a && b;
}

function and16(input) {
    var output = [];
    for (var i = 0; i < input.length; i++) {
        output.push(and(input[i].a, input[i].b));
    }
    return output;
}

但是,我不确定我是否正确测试它:

describe("And Gate", function() {
    it("returns 1 when both arguments are 1", function() {
        expect(and(true, true)).toBe(true);
    });
    it("returns 0 when both arguments are not 1", function() {
        expect(and(true, false)).toBe(false);
        expect(and(false, true)).toBe(false);
        expect(and(false, false)).toBe(false);
    });
});

describe("And16 Gate", function() {
    it("returns an array of 16 bits that have And applied", function() {
        var sample1 = [];
        for (var i = 0; i < 16; i++) {
            sample1.push({ a: true, b: false });
        }
        var result1 = and16(sample1);
        for (var j = 0; j < result1.length; j++) {
            expect(result1[j]).toBe(false);
        }
    });
});

我很满意&#34;和&#34;测试但是&#34; And16&#34;我不确定我应该测试什么。是否应该进行测试?另一件感觉不对的是测试中有很多代码。这是一个问题吗?

0 个答案:

没有答案