void test_led_at_blinking_on_change_mode(void){ LedData ledData; ledInitData(&ledData); msg = CHANGE_MODE; ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); msg = CHANGE_MODE; ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); }
void test_ledSM_given_LED_OFF_state_should_change_to_LED_BLINKING_ON_state_if_msg_is_CHANGE_MODE(void) { LedData ledData; ledInitData(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); msg = CHANGE_MODE; turnOffLED_Expect(PORTG, LED3); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); TEST_ASSERT_EQUAL(msg, DO_NOTHING); }
void test_LedSM_should_change_state_to_LED_BLINKING_ON_when_receive_message_CHANGE_MODE___INITIAL_LED_OFF() { LedData ledData ; ledInitData(&ledData); msg = DO_NOTHING ; turnOffLED_Expect(LED3); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state,LED_OFF); msg = CHANGE_MODE; turnOffLED_Expect(LED3); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state,LED_BLINKING_ON); }
void test_message_passing_given_DO_NOTHING_and_LED_OFF_ledState_should_remain_LED_OFF(void) { LedData ledData; ButtonData buttonData; ledInitData(&ledData); buttonInitData(&buttonData); readUserButton_ExpectAndReturn(0); buttonSM(&buttonData); turnOffLED_Expect(PORTG, LED3); ledSM(&ledData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); }
void test_led_at_blinking_on_do_nothing(void){ LedData ledData; ledInitData(&ledData); msg = CHANGE_MODE; ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); msg = DO_NOTHING; ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_OFF); msg = DO_NOTHING; ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); msg = DO_NOTHING; ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_OFF); }
void test_led_with_button(void){ ButtonData buttonData; LedData ledData; buttonInitData(&buttonData); ledInitData(&ledData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); isButtonPressed_ExpectAndReturn(true); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, PRESS); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_OFF); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_OFF); isButtonPressed_ExpectAndReturn(false); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_OFF); isButtonPressed_ExpectAndReturn(true); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, PRESS); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); isButtonPressed_ExpectAndReturn(false); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); isButtonPressed_ExpectAndReturn(true); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, PRESS); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); isButtonPressed_ExpectAndReturn(false); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); //second time isButtonPressed_ExpectAndReturn(true); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, PRESS); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_OFF); isButtonPressed_ExpectAndReturn(false); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_BLINKING_ON); isButtonPressed_ExpectAndReturn(true); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, PRESS); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_ON); isButtonPressed_ExpectAndReturn(false); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, RELEASE); isButtonPressed_ExpectAndReturn(true); buttonSM(&buttonData); TEST_ASSERT_EQUAL(buttonData.state, PRESS); ledSM(&ledData); TEST_ASSERT_EQUAL(ledData.state, LED_OFF); }