Add additional tests for x52cli

This change adds additional tests to verify the parser behavior, as well
as the handling of any error conditions from libx52 itself.
cpp
nirenjan 2022-06-12 03:37:21 -07:00
parent 552e638b27
commit 0ac3a3d0c4
2 changed files with 186 additions and 3 deletions

View File

@ -19,13 +19,15 @@ extern int run_main(int argc, char **argv);
/* Wrapper functions for libx52 */
int libx52_init(libx52_device **dev)
{
function_called();
*dev = NULL;
return LIBX52_SUCCESS;
return mock();
}
int libx52_connect(libx52_device *dev)
{
return LIBX52_SUCCESS;
function_called();
return mock();
}
int libx52_update(libx52_device *dev)
@ -35,10 +37,12 @@ int libx52_update(libx52_device *dev)
void libx52_exit(libx52_device *dev)
{
return;
}
const char *libx52_strerror(libx52_error_code rc)
{
function_called();
return "";
}

View File

@ -20,11 +20,19 @@
expect_function_calls(libx52_ ## fn, count); \
will_return_count(libx52_ ## fn, LIBX52_SUCCESS, count);
#define CONNECT_FUNCS() \
FUNC(init, 1) \
FUNC(connect, 1)
#define EXPECT(fn, param, value) expect_value(libx52_ ## fn, param, value);
#define EXPECT_STRING(fn, param, value) expect_string(libx52_ ##fn, param, value);
#define FINISH() \
rc = run_main(sizeof(argv)/sizeof(argv[0]), argv); \
assert_int_equal(rc, LIBX52_SUCCESS);
assert_int_equal(rc, 0);
#define FAIL() \
rc = run_main(sizeof(argv)/sizeof(argv[0]), argv); \
assert_int_equal(rc, 1);
#else // !defined TEST_LIST
#define TEST_CASE(tc) cmocka_unit_test(tc),
@ -35,6 +43,7 @@
TEST_CASE(led_fire_off)
TEST_DEF({
SETUP("led", "fire", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_FIRE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -44,6 +53,7 @@ TEST_DEF({
TEST_CASE(led_fire_on)
TEST_DEF({
SETUP("led", "fire", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_FIRE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -53,6 +63,7 @@ TEST_DEF({
TEST_CASE(led_fire_red)
TEST_DEF({
SETUP("led", "fire", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_FIRE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -62,6 +73,7 @@ TEST_DEF({
TEST_CASE(led_fire_amber)
TEST_DEF({
SETUP("led", "fire", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_FIRE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -71,6 +83,7 @@ TEST_DEF({
TEST_CASE(led_fire_green)
TEST_DEF({
SETUP("led", "fire", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_FIRE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -80,6 +93,7 @@ TEST_DEF({
TEST_CASE(led_a_off)
TEST_DEF({
SETUP("led", "a", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_A)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -89,6 +103,7 @@ TEST_DEF({
TEST_CASE(led_a_on)
TEST_DEF({
SETUP("led", "a", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_A)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -98,6 +113,7 @@ TEST_DEF({
TEST_CASE(led_a_red)
TEST_DEF({
SETUP("led", "a", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_A)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -107,6 +123,7 @@ TEST_DEF({
TEST_CASE(led_a_amber)
TEST_DEF({
SETUP("led", "a", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_A)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -116,6 +133,7 @@ TEST_DEF({
TEST_CASE(led_a_green)
TEST_DEF({
SETUP("led", "a", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_A)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -125,6 +143,7 @@ TEST_DEF({
TEST_CASE(led_b_off)
TEST_DEF({
SETUP("led", "b", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_B)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -134,6 +153,7 @@ TEST_DEF({
TEST_CASE(led_b_on)
TEST_DEF({
SETUP("led", "b", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_B)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -143,6 +163,7 @@ TEST_DEF({
TEST_CASE(led_b_red)
TEST_DEF({
SETUP("led", "b", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_B)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -152,6 +173,7 @@ TEST_DEF({
TEST_CASE(led_b_amber)
TEST_DEF({
SETUP("led", "b", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_B)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -161,6 +183,7 @@ TEST_DEF({
TEST_CASE(led_b_green)
TEST_DEF({
SETUP("led", "b", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_B)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -170,6 +193,7 @@ TEST_DEF({
TEST_CASE(led_d_off)
TEST_DEF({
SETUP("led", "d", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_D)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -179,6 +203,7 @@ TEST_DEF({
TEST_CASE(led_d_on)
TEST_DEF({
SETUP("led", "d", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_D)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -188,6 +213,7 @@ TEST_DEF({
TEST_CASE(led_d_red)
TEST_DEF({
SETUP("led", "d", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_D)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -197,6 +223,7 @@ TEST_DEF({
TEST_CASE(led_d_amber)
TEST_DEF({
SETUP("led", "d", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_D)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -206,6 +233,7 @@ TEST_DEF({
TEST_CASE(led_d_green)
TEST_DEF({
SETUP("led", "d", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_D)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -215,6 +243,7 @@ TEST_DEF({
TEST_CASE(led_e_off)
TEST_DEF({
SETUP("led", "e", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_E)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -224,6 +253,7 @@ TEST_DEF({
TEST_CASE(led_e_on)
TEST_DEF({
SETUP("led", "e", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_E)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -233,6 +263,7 @@ TEST_DEF({
TEST_CASE(led_e_red)
TEST_DEF({
SETUP("led", "e", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_E)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -242,6 +273,7 @@ TEST_DEF({
TEST_CASE(led_e_amber)
TEST_DEF({
SETUP("led", "e", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_E)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -251,6 +283,7 @@ TEST_DEF({
TEST_CASE(led_e_green)
TEST_DEF({
SETUP("led", "e", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_E)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -260,6 +293,7 @@ TEST_DEF({
TEST_CASE(led_t1_off)
TEST_DEF({
SETUP("led", "t1", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T1)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -269,6 +303,7 @@ TEST_DEF({
TEST_CASE(led_t1_on)
TEST_DEF({
SETUP("led", "t1", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T1)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -278,6 +313,7 @@ TEST_DEF({
TEST_CASE(led_t1_red)
TEST_DEF({
SETUP("led", "t1", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T1)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -287,6 +323,7 @@ TEST_DEF({
TEST_CASE(led_t1_amber)
TEST_DEF({
SETUP("led", "t1", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T1)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -296,6 +333,7 @@ TEST_DEF({
TEST_CASE(led_t1_green)
TEST_DEF({
SETUP("led", "t1", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T1)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -305,6 +343,7 @@ TEST_DEF({
TEST_CASE(led_t2_off)
TEST_DEF({
SETUP("led", "t2", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T2)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -314,6 +353,7 @@ TEST_DEF({
TEST_CASE(led_t2_on)
TEST_DEF({
SETUP("led", "t2", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T2)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -323,6 +363,7 @@ TEST_DEF({
TEST_CASE(led_t2_red)
TEST_DEF({
SETUP("led", "t2", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T2)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -332,6 +373,7 @@ TEST_DEF({
TEST_CASE(led_t2_amber)
TEST_DEF({
SETUP("led", "t2", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T2)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -341,6 +383,7 @@ TEST_DEF({
TEST_CASE(led_t2_green)
TEST_DEF({
SETUP("led", "t2", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T2)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -350,6 +393,7 @@ TEST_DEF({
TEST_CASE(led_t3_off)
TEST_DEF({
SETUP("led", "t3", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T3)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -359,6 +403,7 @@ TEST_DEF({
TEST_CASE(led_t3_on)
TEST_DEF({
SETUP("led", "t3", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T3)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -368,6 +413,7 @@ TEST_DEF({
TEST_CASE(led_t3_red)
TEST_DEF({
SETUP("led", "t3", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T3)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -377,6 +423,7 @@ TEST_DEF({
TEST_CASE(led_t3_amber)
TEST_DEF({
SETUP("led", "t3", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T3)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -386,6 +433,7 @@ TEST_DEF({
TEST_CASE(led_t3_green)
TEST_DEF({
SETUP("led", "t3", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_T3)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -395,6 +443,7 @@ TEST_DEF({
TEST_CASE(led_pov_off)
TEST_DEF({
SETUP("led", "pov", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_POV)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -404,6 +453,7 @@ TEST_DEF({
TEST_CASE(led_pov_on)
TEST_DEF({
SETUP("led", "pov", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_POV)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -413,6 +463,7 @@ TEST_DEF({
TEST_CASE(led_pov_red)
TEST_DEF({
SETUP("led", "pov", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_POV)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -422,6 +473,7 @@ TEST_DEF({
TEST_CASE(led_pov_amber)
TEST_DEF({
SETUP("led", "pov", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_POV)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -431,6 +483,7 @@ TEST_DEF({
TEST_CASE(led_pov_green)
TEST_DEF({
SETUP("led", "pov", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_POV)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -440,6 +493,7 @@ TEST_DEF({
TEST_CASE(led_throttle_off)
TEST_DEF({
SETUP("led", "throttle", "off")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_THROTTLE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
@ -449,6 +503,7 @@ TEST_DEF({
TEST_CASE(led_throttle_on)
TEST_DEF({
SETUP("led", "throttle", "on")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_THROTTLE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_ON)
@ -458,6 +513,7 @@ TEST_DEF({
TEST_CASE(led_throttle_red)
TEST_DEF({
SETUP("led", "throttle", "red")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_THROTTLE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_RED)
@ -467,6 +523,7 @@ TEST_DEF({
TEST_CASE(led_throttle_amber)
TEST_DEF({
SETUP("led", "throttle", "amber")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_THROTTLE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_AMBER)
@ -476,6 +533,7 @@ TEST_DEF({
TEST_CASE(led_throttle_green)
TEST_DEF({
SETUP("led", "throttle", "green")
CONNECT_FUNCS()
FUNC(set_led_state, 1)
EXPECT(set_led_state, id, LIBX52_LED_THROTTLE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_GREEN)
@ -488,6 +546,7 @@ TEST_DEF({
TEST_CASE(brightness_mfd_0)
TEST_DEF({
SETUP("bri", "mfd", "0")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 1)
EXPECT(set_brightness, brightness, 0)
@ -497,6 +556,7 @@ TEST_DEF({
TEST_CASE(brightness_mfd_1)
TEST_DEF({
SETUP("bri", "mfd", "1")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 1)
EXPECT(set_brightness, brightness, 1)
@ -506,6 +566,7 @@ TEST_DEF({
TEST_CASE(brightness_mfd_2)
TEST_DEF({
SETUP("bri", "mfd", "2")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 1)
EXPECT(set_brightness, brightness, 2)
@ -515,6 +576,7 @@ TEST_DEF({
TEST_CASE(brightness_mfd_126)
TEST_DEF({
SETUP("bri", "mfd", "126")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 1)
EXPECT(set_brightness, brightness, 126)
@ -524,6 +586,7 @@ TEST_DEF({
TEST_CASE(brightness_mfd_127)
TEST_DEF({
SETUP("bri", "mfd", "127")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 1)
EXPECT(set_brightness, brightness, 127)
@ -533,6 +596,7 @@ TEST_DEF({
TEST_CASE(brightness_mfd_128)
TEST_DEF({
SETUP("bri", "mfd", "128")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 1)
EXPECT(set_brightness, brightness, 128)
@ -542,6 +606,7 @@ TEST_DEF({
TEST_CASE(brightness_led_0)
TEST_DEF({
SETUP("bri", "led", "0")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 0)
EXPECT(set_brightness, brightness, 0)
@ -551,6 +616,7 @@ TEST_DEF({
TEST_CASE(brightness_led_1)
TEST_DEF({
SETUP("bri", "led", "1")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 0)
EXPECT(set_brightness, brightness, 1)
@ -560,6 +626,7 @@ TEST_DEF({
TEST_CASE(brightness_led_2)
TEST_DEF({
SETUP("bri", "led", "2")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 0)
EXPECT(set_brightness, brightness, 2)
@ -569,6 +636,7 @@ TEST_DEF({
TEST_CASE(brightness_led_126)
TEST_DEF({
SETUP("bri", "led", "126")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 0)
EXPECT(set_brightness, brightness, 126)
@ -578,6 +646,7 @@ TEST_DEF({
TEST_CASE(brightness_led_127)
TEST_DEF({
SETUP("bri", "led", "127")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 0)
EXPECT(set_brightness, brightness, 127)
@ -587,6 +656,7 @@ TEST_DEF({
TEST_CASE(brightness_led_128)
TEST_DEF({
SETUP("bri", "led", "128")
CONNECT_FUNCS()
FUNC(set_brightness, 1)
EXPECT(set_brightness, mfd, 0)
EXPECT(set_brightness, brightness, 128)
@ -599,6 +669,7 @@ TEST_DEF({
TEST_CASE(indicator_blink_on)
TEST_DEF({
SETUP("blink", "on")
CONNECT_FUNCS()
FUNC(set_blink, 1)
EXPECT(set_blink, state, 1)
FINISH()
@ -607,6 +678,7 @@ TEST_DEF({
TEST_CASE(indicator_blink_off)
TEST_DEF({
SETUP("blink", "off")
CONNECT_FUNCS()
FUNC(set_blink, 1)
EXPECT(set_blink, state, 0)
FINISH()
@ -615,6 +687,7 @@ TEST_DEF({
TEST_CASE(indicator_shift_on)
TEST_DEF({
SETUP("shift", "on")
CONNECT_FUNCS()
FUNC(set_shift, 1)
EXPECT(set_shift, state, 1)
FINISH()
@ -623,6 +696,7 @@ TEST_DEF({
TEST_CASE(indicator_shift_off)
TEST_DEF({
SETUP("shift", "off")
CONNECT_FUNCS()
FUNC(set_shift, 1)
EXPECT(set_shift, state, 0)
FINISH()
@ -634,6 +708,7 @@ TEST_DEF({
TEST_CASE(mfd_0_1)
TEST_DEF({
SETUP("mfd", "0", "a")
CONNECT_FUNCS()
FUNC(set_text, 1)
EXPECT(set_text, line, 0)
EXPECT_STRING(set_text, text, "a")
@ -644,6 +719,7 @@ TEST_DEF({
TEST_CASE(mfd_0_2)
TEST_DEF({
SETUP("mfd", "0", "ab")
CONNECT_FUNCS()
FUNC(set_text, 1)
EXPECT(set_text, line, 0)
EXPECT_STRING(set_text, text, "ab")
@ -654,6 +730,7 @@ TEST_DEF({
TEST_CASE(mfd_1_1)
TEST_DEF({
SETUP("mfd", "1", "a")
CONNECT_FUNCS()
FUNC(set_text, 1)
EXPECT(set_text, line, 1)
EXPECT_STRING(set_text, text, "a")
@ -664,6 +741,7 @@ TEST_DEF({
TEST_CASE(mfd_1_2)
TEST_DEF({
SETUP("mfd", "1", "ab")
CONNECT_FUNCS()
FUNC(set_text, 1)
EXPECT(set_text, line, 1)
EXPECT_STRING(set_text, text, "ab")
@ -674,6 +752,7 @@ TEST_DEF({
TEST_CASE(mfd_2_1)
TEST_DEF({
SETUP("mfd", "2", "a")
CONNECT_FUNCS()
FUNC(set_text, 1)
EXPECT(set_text, line, 2)
EXPECT_STRING(set_text, text, "a")
@ -684,6 +763,7 @@ TEST_DEF({
TEST_CASE(mfd_2_2)
TEST_DEF({
SETUP("mfd", "2", "ab")
CONNECT_FUNCS()
FUNC(set_text, 1)
EXPECT(set_text, line, 2)
EXPECT_STRING(set_text, text, "ab")
@ -697,6 +777,7 @@ TEST_DEF({
TEST_CASE(clock_local_12hr_ddmmyy)
TEST_DEF({
SETUP("clock", "local", "12hr", "ddmmyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 1)
EXPECT(set_clock, time, time(NULL))
@ -711,6 +792,7 @@ TEST_DEF({
TEST_CASE(clock_local_12hr_mmddyy)
TEST_DEF({
SETUP("clock", "local", "12hr", "mmddyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 1)
EXPECT(set_clock, time, time(NULL))
@ -725,6 +807,7 @@ TEST_DEF({
TEST_CASE(clock_local_12hr_yymmdd)
TEST_DEF({
SETUP("clock", "local", "12hr", "yymmdd")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 1)
EXPECT(set_clock, time, time(NULL))
@ -739,6 +822,7 @@ TEST_DEF({
TEST_CASE(clock_local_24hr_ddmmyy)
TEST_DEF({
SETUP("clock", "local", "24hr", "ddmmyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 1)
EXPECT(set_clock, time, time(NULL))
@ -753,6 +837,7 @@ TEST_DEF({
TEST_CASE(clock_local_24hr_mmddyy)
TEST_DEF({
SETUP("clock", "local", "24hr", "mmddyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 1)
EXPECT(set_clock, time, time(NULL))
@ -767,6 +852,7 @@ TEST_DEF({
TEST_CASE(clock_local_24hr_yymmdd)
TEST_DEF({
SETUP("clock", "local", "24hr", "yymmdd")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 1)
EXPECT(set_clock, time, time(NULL))
@ -781,6 +867,7 @@ TEST_DEF({
TEST_CASE(clock_gmt_12hr_ddmmyy)
TEST_DEF({
SETUP("clock", "gmt", "12hr", "ddmmyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 0)
EXPECT(set_clock, time, time(NULL))
@ -795,6 +882,7 @@ TEST_DEF({
TEST_CASE(clock_gmt_12hr_mmddyy)
TEST_DEF({
SETUP("clock", "gmt", "12hr", "mmddyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 0)
EXPECT(set_clock, time, time(NULL))
@ -809,6 +897,7 @@ TEST_DEF({
TEST_CASE(clock_gmt_12hr_yymmdd)
TEST_DEF({
SETUP("clock", "gmt", "12hr", "yymmdd")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 0)
EXPECT(set_clock, time, time(NULL))
@ -823,6 +912,7 @@ TEST_DEF({
TEST_CASE(clock_gmt_24hr_ddmmyy)
TEST_DEF({
SETUP("clock", "gmt", "24hr", "ddmmyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 0)
EXPECT(set_clock, time, time(NULL))
@ -837,6 +927,7 @@ TEST_DEF({
TEST_CASE(clock_gmt_24hr_mmddyy)
TEST_DEF({
SETUP("clock", "gmt", "24hr", "mmddyy")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 0)
EXPECT(set_clock, time, time(NULL))
@ -851,6 +942,7 @@ TEST_DEF({
TEST_CASE(clock_gmt_24hr_yymmdd)
TEST_DEF({
SETUP("clock", "gmt", "24hr", "yymmdd")
CONNECT_FUNCS()
FUNC(set_clock, 1)
EXPECT(set_clock, local, 0)
EXPECT(set_clock, time, time(NULL))
@ -867,6 +959,7 @@ TEST_DEF({
TEST_CASE(offset_2__30_12hr)
TEST_DEF({
SETUP("offset", "2", "-30", "12hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_2)
EXPECT(set_clock_timezone, offset, -30)
@ -879,6 +972,7 @@ TEST_DEF({
TEST_CASE(offset_2__30_24hr)
TEST_DEF({
SETUP("offset", "2", "-30", "24hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_2)
EXPECT(set_clock_timezone, offset, -30)
@ -891,6 +985,7 @@ TEST_DEF({
TEST_CASE(offset_2_0_12hr)
TEST_DEF({
SETUP("offset", "2", "0", "12hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_2)
EXPECT(set_clock_timezone, offset, 0)
@ -903,6 +998,7 @@ TEST_DEF({
TEST_CASE(offset_2_0_24hr)
TEST_DEF({
SETUP("offset", "2", "0", "24hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_2)
EXPECT(set_clock_timezone, offset, 0)
@ -915,6 +1011,7 @@ TEST_DEF({
TEST_CASE(offset_2_30_12hr)
TEST_DEF({
SETUP("offset", "2", "30", "12hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_2)
EXPECT(set_clock_timezone, offset, 30)
@ -927,6 +1024,7 @@ TEST_DEF({
TEST_CASE(offset_2_30_24hr)
TEST_DEF({
SETUP("offset", "2", "30", "24hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_2)
EXPECT(set_clock_timezone, offset, 30)
@ -939,6 +1037,7 @@ TEST_DEF({
TEST_CASE(offset_3__30_12hr)
TEST_DEF({
SETUP("offset", "3", "-30", "12hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_3)
EXPECT(set_clock_timezone, offset, -30)
@ -951,6 +1050,7 @@ TEST_DEF({
TEST_CASE(offset_3__30_24hr)
TEST_DEF({
SETUP("offset", "3", "-30", "24hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_3)
EXPECT(set_clock_timezone, offset, -30)
@ -963,6 +1063,7 @@ TEST_DEF({
TEST_CASE(offset_3_0_12hr)
TEST_DEF({
SETUP("offset", "3", "0", "12hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_3)
EXPECT(set_clock_timezone, offset, 0)
@ -975,6 +1076,7 @@ TEST_DEF({
TEST_CASE(offset_3_0_24hr)
TEST_DEF({
SETUP("offset", "3", "0", "24hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_3)
EXPECT(set_clock_timezone, offset, 0)
@ -987,6 +1089,7 @@ TEST_DEF({
TEST_CASE(offset_3_30_12hr)
TEST_DEF({
SETUP("offset", "3", "30", "12hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_3)
EXPECT(set_clock_timezone, offset, 30)
@ -999,6 +1102,7 @@ TEST_DEF({
TEST_CASE(offset_3_30_24hr)
TEST_DEF({
SETUP("offset", "3", "30", "24hr")
CONNECT_FUNCS()
FUNC(set_clock_timezone, 1)
EXPECT(set_clock_timezone, clock, LIBX52_CLOCK_3)
EXPECT(set_clock_timezone, offset, 30)
@ -1014,6 +1118,7 @@ TEST_DEF({
TEST_CASE(raw_time_0_0_12hr)
TEST_DEF({
SETUP("time", "0", "0", "12hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 0)
EXPECT(set_time, minute, 0)
@ -1026,6 +1131,7 @@ TEST_DEF({
TEST_CASE(raw_time_0_0_24hr)
TEST_DEF({
SETUP("time", "0", "0", "24hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 0)
EXPECT(set_time, minute, 0)
@ -1038,6 +1144,7 @@ TEST_DEF({
TEST_CASE(raw_time_0_1_12hr)
TEST_DEF({
SETUP("time", "0", "1", "12hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 0)
EXPECT(set_time, minute, 1)
@ -1050,6 +1157,7 @@ TEST_DEF({
TEST_CASE(raw_time_0_1_24hr)
TEST_DEF({
SETUP("time", "0", "1", "24hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 0)
EXPECT(set_time, minute, 1)
@ -1062,6 +1170,7 @@ TEST_DEF({
TEST_CASE(raw_time_1_0_12hr)
TEST_DEF({
SETUP("time", "1", "0", "12hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 1)
EXPECT(set_time, minute, 0)
@ -1074,6 +1183,7 @@ TEST_DEF({
TEST_CASE(raw_time_1_0_24hr)
TEST_DEF({
SETUP("time", "1", "0", "24hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 1)
EXPECT(set_time, minute, 0)
@ -1086,6 +1196,7 @@ TEST_DEF({
TEST_CASE(raw_time_2_0_12hr)
TEST_DEF({
SETUP("time", "2", "0", "12hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 2)
EXPECT(set_time, minute, 0)
@ -1098,6 +1209,7 @@ TEST_DEF({
TEST_CASE(raw_time_2_0_24hr)
TEST_DEF({
SETUP("time", "2", "0", "24hr")
CONNECT_FUNCS()
FUNC(set_time, 1)
EXPECT(set_time, hour, 2)
EXPECT(set_time, minute, 0)
@ -1113,6 +1225,7 @@ TEST_DEF({
TEST_CASE(raw_date_ddmmyy)
TEST_DEF({
SETUP("date", "1", "2", "3", "ddmmyy")
CONNECT_FUNCS()
FUNC(set_date, 1)
EXPECT(set_date, dd, 1)
EXPECT(set_date, mm, 2)
@ -1125,6 +1238,7 @@ TEST_DEF({
TEST_CASE(raw_date_mmddyy)
TEST_DEF({
SETUP("date", "1", "2", "3", "mmddyy")
CONNECT_FUNCS()
FUNC(set_date, 1)
EXPECT(set_date, dd, 1)
EXPECT(set_date, mm, 2)
@ -1137,6 +1251,7 @@ TEST_DEF({
TEST_CASE(raw_date_yymmdd)
TEST_DEF({
SETUP("date", "1", "2", "3", "yymmdd")
CONNECT_FUNCS()
FUNC(set_date, 1)
EXPECT(set_date, dd, 1)
EXPECT(set_date, mm, 2)
@ -1151,6 +1266,7 @@ TEST_DEF({
TEST_CASE(vendor_command_hex)
TEST_DEF({
SETUP("raw", "0x0123", "0x4567")
CONNECT_FUNCS()
FUNC(vendor_command, 1)
EXPECT(vendor_command, index, 0x0123)
EXPECT(vendor_command, value, 0x4567)
@ -1160,6 +1276,7 @@ TEST_DEF({
TEST_CASE(vendor_command_oct)
TEST_DEF({
SETUP("raw", "0123", "0456")
CONNECT_FUNCS()
FUNC(vendor_command, 1)
EXPECT(vendor_command, index, 0123)
EXPECT(vendor_command, value, 0456)
@ -1169,6 +1286,7 @@ TEST_DEF({
TEST_CASE(vendor_command_dec)
TEST_DEF({
SETUP("raw", "123", "456")
CONNECT_FUNCS()
FUNC(vendor_command, 1)
EXPECT(vendor_command, index, 123)
EXPECT(vendor_command, value, 456)
@ -1177,5 +1295,66 @@ TEST_DEF({
/* }}} */
/* Command parsing tests {{{ */
TEST_CASE(parsing_no_args)
TEST_DEF({
SETUP()
FAIL()
})
TEST_CASE(parsing_invalid_command)
TEST_DEF({
SETUP("foobar")
FAIL()
})
TEST_CASE(parsing_insufficient_args)
TEST_DEF({
SETUP("led")
FAIL()
})
TEST_CASE(parsing_invalid_map_value)
TEST_DEF({
SETUP("led", "fire", "oon")
FAIL()
})
/* }}} */
/* libx52 error handling tests {{{ */
TEST_CASE(error_libx52_init)
TEST_DEF({
SETUP("led", "fire", "on")
expect_function_calls(libx52_init, 1);
expect_function_calls(libx52_strerror, 1);
will_return_count(libx52_init, LIBX52_ERROR_OUT_OF_MEMORY, 1);
FAIL()
})
TEST_CASE(error_libx52_connect)
TEST_DEF({
SETUP("led", "fire", "on")
FUNC(init, 1)
expect_function_calls(libx52_connect, 1);
expect_function_calls(libx52_strerror, 1);
will_return_count(libx52_connect, LIBX52_ERROR_NO_DEVICE, 1);
FAIL()
})
TEST_CASE(error_libx52_unsupported)
TEST_DEF({
SETUP("led", "fire", "off")
CONNECT_FUNCS()
expect_function_calls(libx52_set_led_state, 1);
will_return_count(libx52_set_led_state, LIBX52_ERROR_NOT_SUPPORTED, 1);
EXPECT(set_led_state, id, LIBX52_LED_FIRE)
EXPECT(set_led_state, state, LIBX52_LED_STATE_OFF)
expect_function_calls(libx52_strerror, 1);
FAIL()
})
/* }}} */
#undef TEST_CASE
#undef TEST_DEF