esp32_BNO08x 1.31
C++ BNO08x IMU driver component for esp-idf.
Loading...
Searching...
No Matches
BNO08xTestHelper.hpp
Go to the documentation of this file.
1
6#pragma once
7
8// in-house includes
9#include "BNO08x.hpp"
10
17{
18 private:
19 inline static BNO08x* test_imu = nullptr;
20 inline static bno08x_config_t imu_cfg;
21
22 static const constexpr char* TAG = "BNO08xTestHelper";
23
24 public:
32 static void print_test_start_banner(const char* TEST_TAG)
33 {
34 printf("------------------------ BEGIN TEST: %s ------------------------\n\r", TEST_TAG);
35 }
36
44 static void print_test_end_banner(const char* TEST_TAG)
45 {
46 printf("------------------------ END TEST: %s ------------------------\n\r", TEST_TAG);
47 }
48
57 static void print_test_msg(const char* TEST_TAG, const char* msg)
58 {
59 printf("%s: %s: %s\n\r", TAG, TEST_TAG, msg);
60 }
61
70 {
71 imu_cfg = cfg;
72 }
73
79 static void create_test_imu()
80 {
81 if (test_imu != nullptr)
83
84 test_imu = new BNO08x();
85 }
86
92 static void destroy_test_imu()
93 {
94 if (test_imu != nullptr)
95 {
96 delete test_imu;
97 test_imu = nullptr;
98 }
99 }
100
107 {
108 return test_imu;
109 }
110
116 static esp_err_t call_init_config_args()
117 {
118 if (test_imu == nullptr)
119 return ESP_FAIL;
120
121 return test_imu->init_config_args();
122 }
123
129 static esp_err_t call_init_gpio()
130 {
131 if (test_imu == nullptr)
132 return ESP_FAIL;
133
134 return test_imu->init_gpio();
135 }
136
142 static esp_err_t call_init_hint_isr()
143 {
144 if (test_imu == nullptr)
145 return ESP_FAIL;
146
147 return test_imu->init_hint_isr();
148 }
149
155 static esp_err_t call_init_spi()
156 {
157 if (test_imu == nullptr)
158 return ESP_FAIL;
159
160 return test_imu->init_spi();
161 }
162
168 static esp_err_t call_init_tasks()
169 {
170 if (test_imu == nullptr)
171 return ESP_FAIL;
172
173 return test_imu->init_tasks();
174 }
175
181 static esp_err_t call_init_sh2_HAL()
182 {
183 if (test_imu == nullptr)
184 return ESP_FAIL;
185
186 return test_imu->init_sh2_HAL();
187 }
188
194 static esp_err_t call_deinit_gpio()
195 {
196 if (test_imu == nullptr)
197 return ESP_FAIL;
198
199 return test_imu->deinit_gpio();
200 }
201
207 static esp_err_t call_deinit_hint_isr()
208 {
209 if (test_imu == nullptr)
210 return ESP_FAIL;
211
212 return test_imu->deinit_hint_isr();
213 }
214
220 static esp_err_t call_deinit_spi()
221 {
222 if (test_imu == nullptr)
223 return ESP_FAIL;
224
225 return test_imu->deinit_spi();
226 }
227
233 static esp_err_t call_deinit_tasks()
234 {
235 if (test_imu == nullptr)
236 return ESP_FAIL;
237
238 return test_imu->deinit_tasks();
239 }
240
246 static esp_err_t call_deinit_sh2_HAL()
247 {
248 if (test_imu == nullptr)
249 return ESP_FAIL;
250
251 return test_imu->deinit_sh2_HAL();
252 }
253};
BNO08x IMU driver class.
Definition BNO08x.hpp:33
esp_err_t deinit_spi()
Deinitializes SPI.
Definition BNO08x.cpp:931
esp_err_t deinit_gpio()
Deinitializes GPIO, called from deconstructor.
Definition BNO08x.cpp:805
esp_err_t init_config_args()
Initializes required esp-idf SPI data structures with values from user passed bno08x_config_t struct.
Definition BNO08x.cpp:390
esp_err_t init_spi()
Initializes SPI.
Definition BNO08x.cpp:702
esp_err_t deinit_sh2_HAL()
Deinitializes sh2 HAL.
Definition BNO08x.cpp:1030
esp_err_t init_tasks()
Initializes data_proc_task.
Definition BNO08x.cpp:632
esp_err_t deinit_tasks()
Deinitializes tasks used by BNO08x driver.
Definition BNO08x.cpp:977
esp_err_t deinit_hint_isr()
Deinitializes host interrupt ISR, called from deconstructor.
Definition BNO08x.cpp:893
esp_err_t init_hint_isr()
Initializes host interrupt ISR.
Definition BNO08x.cpp:583
esp_err_t init_gpio()
Initializes required gpio.
Definition BNO08x.cpp:558
esp_err_t init_sh2_HAL()
Initializes sh2 HAL.
Definition BNO08x.cpp:747
BNO08x unit test helper class.
Definition BNO08xTestHelper.hpp:17
static bno08x_config_t imu_cfg
Definition BNO08xTestHelper.hpp:20
static void print_test_start_banner(const char *TEST_TAG)
Prints test begin banner.
Definition BNO08xTestHelper.hpp:32
static void print_test_end_banner(const char *TEST_TAG)
Prints end begin banner.
Definition BNO08xTestHelper.hpp:44
static void print_test_msg(const char *TEST_TAG, const char *msg)
Prints a message during a test.
Definition BNO08xTestHelper.hpp:57
static BNO08x * test_imu
Definition BNO08xTestHelper.hpp:19
static esp_err_t call_deinit_gpio()
Used to call private BNO08x::deinit_gpio() member for tests.
Definition BNO08xTestHelper.hpp:194
static esp_err_t call_deinit_tasks()
Used to call private BNO08x::deinit_tasks() member for tests.
Definition BNO08xTestHelper.hpp:233
static BNO08x * get_test_imu()
Deletes test IMU calling deconstructor and releases heap allocated memory.
Definition BNO08xTestHelper.hpp:106
static esp_err_t call_init_gpio()
Used to call private BNO08x::init_gpio() member for tests.
Definition BNO08xTestHelper.hpp:129
static esp_err_t call_deinit_spi()
Used to call private BNO08x::deinit_spi() member for tests.
Definition BNO08xTestHelper.hpp:220
static void create_test_imu()
Calls BNO08x constructor and creates new test IMU on heap.
Definition BNO08xTestHelper.hpp:79
static esp_err_t call_init_config_args()
Used to call private BNO08x::init_config_args() member for tests.
Definition BNO08xTestHelper.hpp:116
static esp_err_t call_init_spi()
Used to call private BNO08x::init_spi() member for tests.
Definition BNO08xTestHelper.hpp:155
static esp_err_t call_init_hint_isr()
Used to call private BNO08x::init_hint_isr() member for tests.
Definition BNO08xTestHelper.hpp:142
static esp_err_t call_init_sh2_HAL()
Used to call private BNO08x::init_tasks() member for tests.
Definition BNO08xTestHelper.hpp:181
static esp_err_t call_init_tasks()
Used to call private BNO08x::init_tasks() member for tests.
Definition BNO08xTestHelper.hpp:168
static void set_test_imu_cfg(bno08x_config_t cfg)
Set test imu configuration used with create_test_imu()
Definition BNO08xTestHelper.hpp:69
static const constexpr char * TAG
Definition BNO08xTestHelper.hpp:22
static esp_err_t call_deinit_sh2_HAL()
Used to call private BNO08x::deinit_tasks() member for tests.
Definition BNO08xTestHelper.hpp:246
static esp_err_t call_deinit_hint_isr()
Used to call private BNO08x::deinit_hint_isr() member for tests.
Definition BNO08xTestHelper.hpp:207
static void destroy_test_imu()
Deletes test IMU calling deconstructor and releases heap allocated memory.
Definition BNO08xTestHelper.hpp:92
IMU configuration settings passed into constructor.
Definition BNO08xGlobalTypes.hpp:38