mirror of
https://github.com/iNavFlight/inav.git
synced 2025-07-25 01:05:21 +03:00
Add some unit tests for bitarray
Just to make sure the upcoming changes don't break anything
This commit is contained in:
parent
3e823d9ab8
commit
1dbe90ba1e
2 changed files with 49 additions and 0 deletions
35
src/test/unit/bitarray_unittest.cc
Normal file
35
src/test/unit/bitarray_unittest.cc
Normal file
|
@ -0,0 +1,35 @@
|
|||
#include <cstdint>
|
||||
|
||||
extern "C" {
|
||||
#include "common/bitarray.h"
|
||||
}
|
||||
|
||||
#include "gtest/gtest.h"
|
||||
|
||||
TEST(BitArrayTest, TestGetSet)
|
||||
{
|
||||
uint32_t array[1] = {0};
|
||||
void *p = array;
|
||||
|
||||
bitArraySet(p, 14);
|
||||
EXPECT_EQ(bitArrayGet(p, 14), true);
|
||||
EXPECT_EQ(bitArrayGet(p, 13), false);
|
||||
EXPECT_EQ(bitArrayGet(p, 15), false);
|
||||
|
||||
EXPECT_EQ(bitArrayGet(p, 0), false);
|
||||
bitArraySet(p, 0);
|
||||
EXPECT_EQ(bitArrayGet(p, 0), true);
|
||||
}
|
||||
|
||||
TEST(BitArrayTest, TestClr)
|
||||
{
|
||||
uint32_t array[1] = {0};
|
||||
void *p = array;
|
||||
|
||||
bitArraySet(p, 31);
|
||||
EXPECT_EQ(bitArrayGet(p, 31), true);
|
||||
EXPECT_EQ(bitArrayGet(p, 30), false);
|
||||
EXPECT_EQ(bitArrayGet(p, 0), false);
|
||||
bitArrayClr(p, 31);
|
||||
EXPECT_EQ(bitArrayGet(p, 31), false);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue