Working test runner!!!

This commit is contained in:
jacqueline
2022-11-08 14:56:22 +11:00
parent e219925fac
commit 9f572cb927
8 changed files with 79 additions and 22 deletions
+4 -1
View File
@@ -1 +1,4 @@
idf_component_register(SRCS "main.cpp" INCLUDE_DIRS "." REQUIRE "catch2")
idf_component_register(
SRCS "main.cpp"
INCLUDE_DIRS "."
REQUIRES "catch2")
+30 -10
View File
@@ -1,17 +1,37 @@
#include <stdio.h>
#include <string.h>
static void print_banner(const char* text);
#include "esp_console.h"
#include "esp_log.h"
#include "esp_system.h"
extern "C" {
void app_main(void)
{
print_banner("Running tests without [ignore] tag");
}
#include "catch_runner.hpp"
void register_catch2() {
esp_console_cmd_t cmd{
.command = "catch",
.help = "Execute the catch2 test runner. Use -? for options.",
.hint = NULL,
.func = &exec_catch2,
.argtable = NULL};
esp_console_cmd_register(&cmd);
}
static void print_banner(const char* text)
{
printf("\n#### %s #####\n\n", text);
}
extern "C" void app_main(void) {
esp_console_repl_t* repl = nullptr;
esp_console_repl_config_t repl_config = ESP_CONSOLE_REPL_CONFIG_DEFAULT();
repl_config.max_history_len = 16;
repl_config.prompt = "";
repl_config.max_cmdline_length = 256;
// Catch2 needs a huge stack, since it does a lot of pretty string formatting.
repl_config.task_stack_size = 1024 * 24;
esp_console_dev_uart_config_t hw_config =
ESP_CONSOLE_DEV_UART_CONFIG_DEFAULT();
ESP_ERROR_CHECK(esp_console_new_repl_uart(&hw_config, &repl_config, &repl));
esp_console_register_help_command();
register_catch2();
ESP_ERROR_CHECK(esp_console_start_repl(repl));
}