From 1a230057e93fbb2ae957be625cb7f61b9140b7d5 Mon Sep 17 00:00:00 2001 From: Paul Nykiel Date: Wed, 28 Dec 2022 22:15:35 +0100 Subject: [PATCH] #45: Test structure for error and mode handler, tests for controller --- Tests/LowLevel/Application/controller.cpp | 56 +++++++++++++++++--- Tests/LowLevel/Application/error_handler.cpp | 15 +++--- Tests/LowLevel/Application/mode_handler.cpp | 14 ++--- 3 files changed, 67 insertions(+), 18 deletions(-) diff --git a/Tests/LowLevel/Application/controller.cpp b/Tests/LowLevel/Application/controller.cpp index 685bd3b3..733b1db3 100644 --- a/Tests/LowLevel/Application/controller.cpp +++ b/Tests/LowLevel/Application/controller.cpp @@ -1,6 +1,50 @@ -/** - * @file controller.cpp - * @author paul - * @date 05.12.22 - * Description here TODO - */ +#include + +extern "C" { +#include +} + +TEST(TEST_NAME, no_error) { + imu_data_t imuData{}; + imuData.roll_mul_16 = 37 * 16; + imuData.pitch_mul_16 = -49 * 16; + auto controllerCmd = controller_update(&imuData, 37, -49); + EXPECT_EQ(controllerCmd.elevon_right, 0); + EXPECT_EQ(controllerCmd.elevon_left, 0); +} + +TEST(TEST_NAME, need_roll_right) { + imu_data_t imuData{}; + imuData.roll_mul_16 = -90 * 16; + imuData.pitch_mul_16 = -49 * 16; + auto controllerCmd = controller_update(&imuData, 90, -49); + EXPECT_EQ(controllerCmd.elevon_right, 500); + EXPECT_EQ(controllerCmd.elevon_left, -500); +} + +TEST(TEST_NAME, need_roll_left) { + imu_data_t imuData{}; + imuData.roll_mul_16 = 90 * 16; + imuData.pitch_mul_16 = -49 * 16; + auto controllerCmd = controller_update(&imuData, -90, -49); + EXPECT_EQ(controllerCmd.elevon_right, -500); + EXPECT_EQ(controllerCmd.elevon_left, 500); +} + +TEST(TEST_NAME, need_pitch_up) { + imu_data_t imuData{}; + imuData.roll_mul_16 = 37 * 16; + imuData.pitch_mul_16 = 90 * 16; + auto controllerCmd = controller_update(&imuData, 37, -90); + EXPECT_EQ(controllerCmd.elevon_right, 500); + EXPECT_EQ(controllerCmd.elevon_left, 500); +} + +TEST(TEST_NAME, need_pitch_down) { + imu_data_t imuData{}; + imuData.roll_mul_16 = 37 * 16; + imuData.pitch_mul_16 = -90 * 16; + auto controllerCmd = controller_update(&imuData, 37, 90); + EXPECT_EQ(controllerCmd.elevon_right, -500); + EXPECT_EQ(controllerCmd.elevon_left, -500); +} diff --git a/Tests/LowLevel/Application/error_handler.cpp b/Tests/LowLevel/Application/error_handler.cpp index 75feab09..c144ffe4 100644 --- a/Tests/LowLevel/Application/error_handler.cpp +++ b/Tests/LowLevel/Application/error_handler.cpp @@ -1,6 +1,9 @@ -/** - * @file error_handler.cpp - * @author paul - * @date 05.12.22 - * Description here TODO - */ +#include + +extern "C" { +#include +} + +TEST(TEST_NAME, init) { + +} diff --git a/Tests/LowLevel/Application/mode_handler.cpp b/Tests/LowLevel/Application/mode_handler.cpp index 51284614..caf6f1fb 100644 --- a/Tests/LowLevel/Application/mode_handler.cpp +++ b/Tests/LowLevel/Application/mode_handler.cpp @@ -1,6 +1,8 @@ -/** - * @file mode_handler.cpp - * @author Paul Nykiel - * @date 21.12.22 - * @brief Description here TODO - */ +#include + +extern "C" { +#include +} + +TEST(TEST_NAME, init) { +}