119 lines
3.3 KiB
C++
119 lines
3.3 KiB
C++
#include "unity.h"
|
|
#include "../include/BNO08xTestHelper.hpp"
|
|
|
|
TEST_CASE("Init Config Args", "[Init]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Init Config Args";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
BNO08xTestHelper::print_test_msg(TEST_TAG, "Creating test IMU.");
|
|
BNO08xTestHelper::create_test_imu();
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
|
|
TEST_ASSERT_EQUAL(ESP_OK, BNO08xTestHelper::call_init_config_args());
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
}
|
|
|
|
TEST_CASE("Init GPIO", "[Init]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Init GPIO";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
|
|
TEST_ASSERT_EQUAL(ESP_OK, BNO08xTestHelper::call_init_gpio());
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
}
|
|
|
|
TEST_CASE("Init HINT ISR", "[Init]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Init HINT_ISR";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
|
|
TEST_ASSERT_EQUAL(ESP_OK, BNO08xTestHelper::call_init_hint_isr());
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
}
|
|
|
|
TEST_CASE("Init SPI", "[Init]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Init SPI";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
|
|
TEST_ASSERT_EQUAL(ESP_OK, BNO08xTestHelper::call_init_spi());
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
}
|
|
|
|
TEST_CASE("Init Tasks", "[Init]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Init Tasks";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
|
|
TEST_ASSERT_EQUAL(ESP_OK, BNO08xTestHelper::call_launch_tasks());
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
}
|
|
|
|
TEST_CASE("Finish Init", "[Init]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Finish Init";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
|
|
// reset imu
|
|
TEST_ASSERT_EQUAL(true, imu->hard_reset());
|
|
|
|
// check if reason is valid
|
|
TEST_ASSERT_NOT_EQUAL(IMUResetReason::UNDEFINED, imu->get_reset_reason());
|
|
|
|
BNO08xTestHelper::print_test_msg(TEST_TAG, "Destroying test IMU.");
|
|
BNO08xTestHelper::destroy_test_imu();
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
}
|
|
|
|
TEST_CASE("Full Init & Deinit", "[FullInitDenit]")
|
|
{
|
|
const constexpr char* TEST_TAG = "Full Init & Deinit";
|
|
BNO08x* imu = nullptr;
|
|
|
|
BNO08xTestHelper::print_test_start_banner(TEST_TAG);
|
|
|
|
BNO08xTestHelper::print_test_msg(TEST_TAG, "Initializing IMU attempt 1.");
|
|
BNO08xTestHelper::create_test_imu();
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
TEST_ASSERT_EQUAL(true, imu->initialize());
|
|
BNO08xTestHelper::print_test_msg(TEST_TAG, "Success, deinitializing IMU.");
|
|
BNO08xTestHelper::destroy_test_imu();
|
|
|
|
BNO08xTestHelper::print_test_msg(TEST_TAG, "Initializing IMU attempt 2.");
|
|
BNO08xTestHelper::create_test_imu();
|
|
imu = BNO08xTestHelper::get_test_imu();
|
|
TEST_ASSERT_EQUAL(true, imu->initialize());
|
|
BNO08xTestHelper::print_test_msg(TEST_TAG, "Success, deinitializing IMU.");
|
|
BNO08xTestHelper::destroy_test_imu();
|
|
|
|
BNO08xTestHelper::print_test_end_banner(TEST_TAG);
|
|
} |