如果给出开关案例
typedef unsigned char uint8_t;
const uint8_t mask = 0x01;
const uint8_t Buffer[];
switch (Buffer[4] & mask)
{
case 0x01U:
---
if
else
case 0x00U:
------
if
else
default:
}
我正在进行单元测试,以获得100%的覆盖率并测试一个我需要输入默认情况但我无法理解切换(Buffer[2] & mask)
意味着什么,即(Buffer[2] & mask)
究竟是什么describe和&
用于什么以及如何输入默认情况?
答案 0 :(得分:4)
由于var path = require('path');
var Nightmare = require('nightmare');
var should = require('chai').should();
describe('Nightmare demo', function() {
this.timeout(15000); // Set timeout to 15 seconds
var url = 'http://example.com';
describe('Start page', function() {
it('should show form when loaded', function(done) {
new Nightmare()
.goto(url)
.evaluate(function() {
return document.querySelectorAll('form').length;
}, function(result) {
result.should.equal(1);
done();
})
.run();
});
});
});
为1,如果mask
为奇数,则Buffer[4] & mask
为1
,如果为偶数,则Buffer[4]
为0
。它不能是其他任何东西。
因此永远不会使用案例标签2
。
&
是按位AND运算符。