pikapython/port/linux/test/mem_test.cpp
李昂 6acc0f9ecd !25 support format output for print()
* test for format with tuple is ok
* 'format'%var is ok (tuple var is not ok)
* rename _cformat to cformat()
* optimize the memory usage of format_list
* add string-test.cpp
* cformat() is ok
* fix variable par load issue
* use test_common.h
* use test_common to simplify the gtest case
* Merge branch 'master' into dev
* fix float->double for bytecodegen
* update to /package
* Use double in C for float in python
2022-06-14 03:20:17 +00:00

65 lines
1.5 KiB
C

#include "test_common.h"
TEST(bitmap, init) {
uint8_t* bitmap = bitmap_init(10);
for (int i = 0; i < 10; i++) {
EXPECT_EQ(0, bitmap_get(bitmap, i));
}
bitmap_deinit(bitmap);
}
TEST(bitmap, set_all) {
uint8_t* bitmap = bitmap_init(10);
for (int i = 0; i < 10; i++) {
bitmap_set(bitmap, i, 1);
}
for (int i = 0; i < 10; i++) {
EXPECT_EQ(1, bitmap_get(bitmap, i));
}
bitmap_deinit(bitmap);
}
TEST(bitmap, set_half) {
uint8_t* bitmap = bitmap_init(10);
for (int i = 0; i < 5; i++) {
bitmap_set(bitmap, i, 1);
}
for (int i = 0; i < 5; i++) {
EXPECT_EQ(1, bitmap_get(bitmap, i));
}
for (int i = 5; i < 10; i++) {
EXPECT_EQ(0, bitmap_get(bitmap, i));
}
bitmap_deinit(bitmap);
}
TEST(bitmap, set_half_2) {
uint8_t* bitmap = bitmap_init(10);
for (int i = 0; i < 10; i += 2) {
bitmap_set(bitmap, i, 1);
}
for (int i = 0; i < 10; i += 2) {
EXPECT_EQ(1, bitmap_get(bitmap, i));
}
for (int i = 1; i < 10; i += 2) {
EXPECT_EQ(0, bitmap_get(bitmap, i));
}
bitmap_deinit(bitmap);
}
TEST(bitmap, reset_half_2) {
uint8_t* bitmap = bitmap_init(10);
for (int i = 0; i < 10; i++) {
bitmap_set(bitmap, i, 1);
}
for (int i = 0; i < 10; i += 2) {
bitmap_set(bitmap, i, 0);
}
for (int i = 0; i < 10; i += 2) {
EXPECT_EQ(0, bitmap_get(bitmap, i));
}
for (int i = 1; i < 10; i += 2) {
EXPECT_EQ(1, bitmap_get(bitmap, i));
}
bitmap_deinit(bitmap);
}