void test_NewDelete_error(void) { BFI bfi; int bfi_ret; int i; static const BFI_TEST_DATA programs[] = { BFI_TEST(program1,0), BFI_TEST(err_program1,256), BFI_TEST(err_program2,256), BFI_TEST(err_program3,256), }; int program_num = sizeof(programs)/sizeof(programs[0]); for(i = 0; i < program_num; i++){ bfi = brainfuck_new(programs[i].ptr_program, programs[i].programsize, programs[i].tapesize); PCU_ASSERT_PTR_EQUAL_MESSAGE(NULL, bfi, PCU_format("i=%d",i)); bfi_ret = brainfuck_delete(bfi); PCU_ASSERT_EQUAL_MESSAGE(BFI_ERROR, bfi_ret, PCU_format("i=%d",i)); } }
void test_NewDelete(void) { BFI bfi; int bfi_ret; int test_tapesize; int tapesize; const int *tapeptr; int c; int i; test_tapesize = 256; bfi = brainfuck_new(program1, sizeof(program1)/sizeof(program1[0]), test_tapesize); PCU_ASSERT_PTR_NOT_EQUAL(NULL, bfi); bfi_ret = brainfuck_get_tapesize(bfi, &tapesize); PCU_ASSERT_EQUAL(BFI_SUCCESS, bfi_ret); PCU_ASSERT_EQUAL(test_tapesize, tapesize); bfi_ret = brainfuck_get_tapeptr(bfi, &tapeptr); PCU_ASSERT_EQUAL(BFI_SUCCESS, bfi_ret); PCU_ASSERT_PTR_NOT_EQUAL(&c, tapeptr); for(i = 0; i < tapesize; i++){ PCU_ASSERT_EQUAL_MESSAGE(0, tapeptr[i], PCU_format("i=%d",i)); } bfi_ret = brainfuck_delete(bfi); PCU_ASSERT_EQUAL(BFI_SUCCESS, bfi_ret); }
void test_Step_data(void) { BFI bfi; int bfi_ret; int i; int pc; static const BFI_TEST_DATA programs[] = { BFI_TEST(program3,256), BFI_TEST(program4,256), BFI_TEST(program5,256), }; int program_num = sizeof(programs)/sizeof(programs[0]); for(i = 0; i < program_num; i++){ bfi = brainfuck_new(programs[i].ptr_program, programs[i].programsize, programs[i].tapesize); PCU_ASSERT_PTR_NOT_EQUAL_MESSAGE(NULL, bfi, PCU_format("i=%d",i)); pc = 256; bfi_ret = brainfuck_get_programcounter(bfi, &pc); PCU_ASSERT_EQUAL_MESSAGE(0, pc, PCU_format("i=%d",i)); bfi_ret = brainfuck_step(bfi); PCU_ASSERT_EQUAL_MESSAGE(BFI_SUCCESS, bfi_ret, PCU_format("i=%d",i)); pc = 0; bfi_ret = brainfuck_get_programcounter(bfi, &pc); PCU_ASSERT_EQUAL_MESSAGE(1, pc, PCU_format("i=%d",i)); bfi_ret = brainfuck_delete(bfi); PCU_ASSERT_EQUAL_MESSAGE(BFI_SUCCESS, bfi_ret, PCU_format("i=%d",i)); } }
void test_CheckProgramBracket(void) { int bfi_ret; int i; static const BFI_TEST_DATA programs[] = { BFI_TEST(program1,0), BFI_TEST(program2,0), }; int program_num = sizeof(programs)/sizeof(programs[0]); for(i = 0; i < program_num; i++){ bfi_ret = brainfuck_check_programbracket(programs[i].ptr_program, programs[i].programsize); PCU_ASSERT_EQUAL_MESSAGE(BFI_SUCCESS, bfi_ret, PCU_format("i=%d",i)); } }
static void test_StrToken(void) { size_t i; PCU_ASSERT_EQUAL(data->expected_count, StrToken_count(tok)); for (i = 0; i < data->expected_count; i++) { PCU_ASSERT_STRING_EQUAL_MESSAGE(data->expected_token[i], StrToken_get(tok, i), PCU_format("%dth token err", i)); } }