| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- /*
- * SPDX-FileCopyrightText: 2021 Espressif Systems (Shanghai) CO LTD
- *
- * SPDX-License-Identifier: Apache-2.0
- */
- #include <stdio.h>
- #include <string.h>
- #include "sdkconfig.h"
- #include "unity.h"
- #include "test_utils.h"
- #include "esp_console.h"
- #include "argtable3/argtable3.h"
- #include "freertos/FreeRTOS.h"
- #include "freertos/task.h"
- static int do_hello_cmd(int argc, char **argv)
- {
- printf("Hello World\n");
- return 0;
- }
- TEST_CASE("esp console init/deinit test", "[console]")
- {
- esp_console_config_t console_config = ESP_CONSOLE_CONFIG_DEFAULT();
- TEST_ESP_OK(esp_console_init(&console_config));
- const esp_console_cmd_t cmd = {
- .command = "hello",
- .help = "Print Hello World",
- .hint = NULL,
- .func = do_hello_cmd,
- };
- TEST_ESP_OK(esp_console_cmd_register(&cmd));
- // re-register the same command, just for test
- TEST_ESP_OK(esp_console_cmd_register(&cmd));
- TEST_ESP_OK(esp_console_deinit());
- }
- static esp_console_repl_t *s_repl = NULL;
- /* handle 'quit' command */
- static int do_cmd_quit(int argc, char **argv)
- {
- printf("ByeBye\r\n");
- s_repl->del(s_repl);
- return 0;
- }
- // Enter "quit" to exit REPL environment
- TEST_CASE("esp console repl test", "[console][ignore]")
- {
- esp_console_repl_config_t repl_config = ESP_CONSOLE_REPL_CONFIG_DEFAULT();
- esp_console_dev_uart_config_t uart_config = ESP_CONSOLE_DEV_UART_CONFIG_DEFAULT();
- TEST_ESP_OK(esp_console_new_repl_uart(&uart_config, &repl_config, &s_repl));
- esp_console_cmd_t cmd = {
- .command = "quit",
- .help = "Quit REPL environment",
- .func = &do_cmd_quit
- };
- TEST_ESP_OK(esp_console_cmd_register(&cmd));
- TEST_ESP_OK(esp_console_start_repl(s_repl));
- vTaskDelay(pdMS_TO_TICKS(2000));
- }
|