我有一个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;我不确定我应该测试什么。是否应该进行测试?另一件感觉不对的是测试中有很多代码。这是一个问题吗?