/* This test case fails since decrement_value() doesn't assert on a NULL * pointer. */ void decrement_value_fail(void **state) { expect_assert_failure(decrement_value(NULL)); }
/*----------------------------------------------------------------------------*/ static int spin_handler(void *data, event_t evt, int param1, void *param2) { (void) data; //Prevent unused warning (void) param1; (void) param2; switch(evt) { case IDLE_EVENT: if(timeout_riched(&spin_data.timeout, sys_tick_count())) { timeout_set(&spin_data.timeout, CURSOR_TIME, sys_tick_count()); spin_data.cursor_active = !spin_data.cursor_active; draw_cursor(); } if(spin_data.active_key == KEY_UP && timeout_riched(&spin_data.key_timeout, sys_tick_count())) { if(!increment_value()) spin_data.active_key = 0; else timeout_set(&spin_data.key_timeout, KEY_REPEAT_TIME, sys_tick_count()); } if(spin_data.active_key == KEY_DOWN && timeout_riched(&spin_data.key_timeout, sys_tick_count())) { if(!decrement_value()) spin_data.active_key = 0; else timeout_set(&spin_data.key_timeout, KEY_REPEAT_TIME, sys_tick_count()); } break; case MODE_SET_EVENT: if(!param1) //Mode exit return 0; display(); break; case KEY_PRESS_EVENT: if(param1 == KEY_UP) { if(increment_value()) { spin_data.active_key = KEY_UP; timeout_set(&spin_data.key_timeout, KEY_DELAY_TIME, sys_tick_count()); } } if(param1 == KEY_DOWN) { if(decrement_value()) { spin_data.active_key = KEY_DOWN; timeout_set(&spin_data.key_timeout, KEY_DELAY_TIME, sys_tick_count()); } } if(param1 == KEY_STOP || param1 == KEY_MENU) { start_work_menu(); } if(param1 == KEY_OK) { *spin_data.value = value; pop_event_handler(); } break; case KEY_RELEASE_EVENT: spin_data.active_key = 0; break; default: break; } return 0; }