NerfUS / NerfUSXbee

Dependents:   NerfUS-Coord NerfUSTarget

Fork of APP3_xbee by Team APP

Revision:
6:b70f32a80d51
Parent:
5:cd3c79853dc8
Child:
7:c65c4c98d237
--- a/test.cpp	Sun Feb 12 22:42:45 2017 +0000
+++ b/test.cpp	Mon Feb 13 19:13:50 2017 +0000
@@ -13,6 +13,13 @@
     parse_frame_parses_transmit_status_test();
     parse_frame_parses_at_command_response_test();
     handle_frame_adds_parsed_frame_to_mailbox_test();
+    
+    parsed_frame_to_string_button_event_released_test();
+    parsed_frame_to_string_button_event_pressed_test();
+    parsed_frame_to_string_button_event_invalid_state_test();
+    parsed_frame_to_string_accelerometer_test();
+    parsed_frame_to_string_accelerometer_negative_values_test();
+    parsed_frame_to_string_unsupported_event_type_test();
 }
 
 void vectors_are_equal_test()
@@ -157,4 +164,76 @@
     
     assert(vectors_are_equal(expected_parsed_frame, *parsed_frame)); 
     parsed_frames.free(parsed_frame);   
-}
\ No newline at end of file
+}
+
+void parsed_frame_to_string_button_event_released_test()
+{
+    const char parsed_frame_array[] = {FRAME_TYPE_RECEIVE_PACKET, EVENT_TYPE_BUTTON, 0x00};
+    const vector<char> parsed_frame = construct_vector(parsed_frame_array, 3);
+    const char expected_string[] = "Button state: released";
+    
+    char actual_string[40];
+    parsed_frame_to_string(parsed_frame, actual_string);
+    
+    assert(0 == strcmp(expected_string, actual_string));
+}
+
+void parsed_frame_to_string_button_event_pressed_test()
+{
+    const char parsed_frame_array[] = {FRAME_TYPE_RECEIVE_PACKET, EVENT_TYPE_BUTTON, 0x01};
+    const vector<char> parsed_frame = construct_vector(parsed_frame_array, 3);
+    const char expected_string[] = "Button state: pressed";
+    
+    char actual_string[40];
+    parsed_frame_to_string(parsed_frame, actual_string);
+    
+    assert(0 == strcmp(expected_string, actual_string));
+}
+
+void parsed_frame_to_string_button_event_invalid_state_test()
+{
+    const char parsed_frame_array[] = {FRAME_TYPE_RECEIVE_PACKET, EVENT_TYPE_BUTTON, 'X'};
+    const vector<char> parsed_frame = construct_vector(parsed_frame_array, 3);
+    const char expected_string[] = "Button state: invalid state";
+    
+    char actual_string[40];
+    parsed_frame_to_string(parsed_frame, actual_string);
+    
+    assert(0 == strcmp(expected_string, actual_string));
+}
+
+void parsed_frame_to_string_accelerometer_test()
+{
+    const char parsed_frame_array[] = {FRAME_TYPE_RECEIVE_PACKET, EVENT_TYPE_ACCELEROMETER, 0x01, 0x02, 0x03};
+    const vector<char> parsed_frame = construct_vector(parsed_frame_array, 5);
+    const char expected_string[] = "Accelerometer state: x=0x1, y=0x2, z=0x3";
+    
+    char actual_string[40];
+    parsed_frame_to_string(parsed_frame, actual_string);
+    
+    assert(0 == strcmp(expected_string, actual_string));
+}
+
+void parsed_frame_to_string_accelerometer_negative_values_test()
+{
+    const char parsed_frame_array[] = {FRAME_TYPE_RECEIVE_PACKET, EVENT_TYPE_ACCELEROMETER, 0xFF, 0xFE, 0xFD};
+    const vector<char> parsed_frame = construct_vector(parsed_frame_array, 5);
+    const char expected_string[] = "Accelerometer state: x=0xFF, y=0xFE, z=0xFD";
+    
+    char actual_string[40];
+    parsed_frame_to_string(parsed_frame, actual_string);
+    
+    assert(0 == strcmp(expected_string, actual_string));
+}
+
+void parsed_frame_to_string_unsupported_event_type_test()
+{
+    const char parsed_frame_array[] = {FRAME_TYPE_RECEIVE_PACKET, 'X'};
+    const vector<char> parsed_frame = construct_vector(parsed_frame_array, 2);
+    const char expected_string[] = "Invalid event type";
+    
+    char actual_string[40];
+    parsed_frame_to_string(parsed_frame, actual_string);
+    
+    assert(0 == strcmp(expected_string, actual_string));
+}