only: setBitRangeMsb coverage

This commit is contained in:
Andrey 2024-02-15 16:41:04 -05:00
parent 68463e8634
commit 9a782c0b5a
2 changed files with 17 additions and 2 deletions

View File

@ -144,7 +144,7 @@ function setBitRangeMsb(data, totalBitIndex, bitWidth, value) \
local bitInByteIndex = totalBitIndex - byteIndex * 8 \
if (bitInByteIndex + bitWidth > 8) then \
local bitsToHandleNow = 8 - bitInByteIndex \
setBitRange(data, totalBitIndex + bitsToHandleNow, bitWidth - bitsToHandleNow, value >> bitsToHandleNow) \
setBitRangeMsb(data, totalBitIndex - bitsToHandleNow, bitWidth - bitsToHandleNow, value >> bitsToHandleNow) \
bitWidth = bitsToHandleNow \
end \
local mask = (1 << bitWidth) - 1 \

View File

@ -117,7 +117,7 @@ TEST(LuaE65, gearTorque2) {
EXPECT_NEAR_M3(testLuaReturnsNumberOrNil(realdata).value_or(0), 0x019F);
}
TEST(LuaE65, getBitRangeMsgTest) {
TEST(LuaE65, getBitRangeMsbTest) {
const char* realdata = GET_BIT_RANGE_MSB R"(
function testFunc()
@ -128,6 +128,21 @@ TEST(LuaE65, getBitRangeMsgTest) {
EXPECT_NEAR_M3(testLuaReturnsNumberOrNil(realdata).value_or(0), 0x740);
}
TEST(LuaE65, setBitRangeMsbTest) {
const char* realdata = PRINT_ARRAY ARRAY_EQUALS SET_BIT_RANGE_MSB R"(
function testFunc()
data = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
setBitRangeMsb(data, 6 * 8, 13, 0x740)
expected = {0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x00}
-- print(arrayToString(data))
-- print(arrayToString(expected))
return equals(data, expected)
end)";
EXPECT_NEAR_M3(testLuaReturnsNumberOrNil(realdata).value_or(0), 0);
}
TEST(LuaE65, gearTorque3) {
const char* realdata = GET_BIT_RANGE_LSB R"(