diff --git a/cli/test_x52_cli.c b/cli/test_x52_cli.c index 2fdb800..fb5c196 100644 --- a/cli/test_x52_cli.c +++ b/cli/test_x52_cli.c @@ -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 ""; } diff --git a/cli/test_x52_cli_tests.c b/cli/test_x52_cli_tests.c index 9771c9b..fac8f33 100644 --- a/cli/test_x52_cli_tests.c +++ b/cli/test_x52_cli_tests.c @@ -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