static void test_to_base36(TestBatchRunner *runner) { char buffer[StrHelp_MAX_BASE36_BYTES]; StrHelp_to_base36(UINT64_MAX, buffer); TEST_STR_EQ(runner, "3w5e11264sgsf", buffer, "base36 UINT64_MAX"); StrHelp_to_base36(1, buffer); TEST_STR_EQ(runner, "1", buffer, "base36 1"); TEST_INT_EQ(runner, buffer[1], 0, "base36 NULL termination"); }
void TestMemPool_run_tests() { TestBatch *batch = TestBatch_new(4); MemoryPool *mem_pool = MemPool_new(0); MemoryPool *other = MemPool_new(0); char *ptr_a, *ptr_b; TestBatch_Plan(batch); ptr_a = (char*)MemPool_Grab(mem_pool, 10); strcpy(ptr_a, "foo"); MemPool_Release_All(mem_pool); ptr_b = (char*)MemPool_Grab(mem_pool, 10); TEST_STR_EQ(batch, ptr_b, "foo", "Recycle RAM on Release_All"); ptr_a = mem_pool->buf; MemPool_Resize(mem_pool, ptr_b, 6); TEST_TRUE(batch, mem_pool->buf < ptr_a, "Resize"); ptr_a = (char*)MemPool_Grab(other, 20); MemPool_Release_All(other); MemPool_Eat(other, mem_pool); TEST_TRUE(batch, other->buf == mem_pool->buf, "Eat"); TEST_TRUE(batch, other->buf != NULL, "Eat"); DECREF(mem_pool); DECREF(other); DECREF(batch); }
VbError_t VbExDisplayImage(uint32_t x, uint32_t y, void *buffer, uint32_t buffersize) { switch (x) { case 1: TEST_STR_EQ(buffer, "original", " uncompressed image"); break; case 2: TEST_STR_EQ(buffer, "decompressed", " compressed image"); break; default: TEST_STR_EQ(buffer, "invalid", " correct image"); break; } return VBERROR_SUCCESS; }
void TestVariadicMacros_run(TestBatch *batch) { char buf[10]; chaz_bool_t really_has_var_macs = false; #if defined(HAS_ISO_VARIADIC_MACROS) || defined(HAS_GNUC_VARIADIC_MACROS) #ifdef HAS_VARIADIC_MACROS PASS(batch, "#defines agree"); #else FAIL(batch, 0, "#defines agree"); #endif #else SKIP_REMAINING(batch, "No variadic macro support"); #endif #ifdef HAS_ISO_VARIADIC_MACROS #define ISO_TEST(buffer, fmt, ...) \ sprintf(buffer, fmt, __VA_ARGS__) really_has_var_macs = true; ISO_TEST(buf, "%s", "iso"); TEST_STR_EQ(batch, buf, "iso", "ISO variadic macros work"); #else SKIP(batch, "No ISO variadic macros"); #endif #ifdef HAS_GNUC_VARIADIC_MACROS #define GNU_TEST(buffer, fmt, args...) \ sprintf(buffer, fmt, ##args ) really_has_var_macs = true; GNU_TEST(buf, "%s", "gnu"); TEST_STR_EQ(batch, buf, "gnu", "GNUC variadic macros work"); #else SKIP(batch, "No GNUC variadic macros"); #endif TEST_TRUE(batch, really_has_var_macs, "either ISO or GNUC"); }