LCOV - code coverage report
Current view: top level - zephyr/shell - shell_dummy.h Hit Total Coverage
Test: new.info Lines: 5 10 50.0 %
Date: 2024-12-21 18:13:37

          Line data    Source code
       1           0 : /*
       2             :  * Shell backend used for testing
       3             :  *
       4             :  * Copyright (c) 2018 Nordic Semiconductor ASA
       5             :  *
       6             :  * SPDX-License-Identifier: Apache-2.0
       7             :  */
       8             : 
       9             : #ifndef ZEPHYR_INCLUDE_SHELL_DUMMY_H_
      10             : #define ZEPHYR_INCLUDE_SHELL_DUMMY_H_
      11             : 
      12             : #include <zephyr/shell/shell.h>
      13             : 
      14             : #ifdef __cplusplus
      15             : extern "C" {
      16             : #endif
      17             : 
      18           0 : extern const struct shell_transport_api shell_dummy_transport_api;
      19             : 
      20           0 : struct shell_dummy {
      21           0 :         bool initialized;
      22             : 
      23             :         /** current number of bytes in buffer (0 if no output) */
      24           1 :         size_t len;
      25             : 
      26             :         /** output buffer to collect shell output */
      27           1 :         char buf[CONFIG_SHELL_BACKEND_DUMMY_BUF_SIZE];
      28             : };
      29             : 
      30           0 : #define SHELL_DUMMY_DEFINE(_name)                                       \
      31             :         static struct shell_dummy _name##_shell_dummy;                  \
      32             :         struct shell_transport _name = {                                \
      33             :                 .api = &shell_dummy_transport_api,                  \
      34             :                 .ctx = (struct shell_dummy *)&_name##_shell_dummy   \
      35             :         }
      36             : 
      37             : /**
      38             :  * @brief This function shall not be used directly. It provides pointer to shell
      39             :  *        dummy backend instance.
      40             :  *
      41             :  * Function returns pointer to the shell dummy instance. This instance can be
      42             :  * next used with shell_execute_cmd function in order to test commands behavior.
      43             :  *
      44             :  * @returns Pointer to the shell instance.
      45             :  */
      46           1 : const struct shell *shell_backend_dummy_get_ptr(void);
      47             : 
      48             : /**
      49             :  * @brief Returns the buffered output in the shell and resets the pointer
      50             :  *
      51             :  * The returned data is always followed by a nul character at position *sizep
      52             :  *
      53             :  * @param sh    Shell pointer
      54             :  * @param sizep Returns size of data in shell buffer
      55             :  * @returns pointer to buffer containing shell output
      56             :  */
      57           1 : const char *shell_backend_dummy_get_output(const struct shell *sh,
      58             :                                            size_t *sizep);
      59             : 
      60             : /**
      61             :  * @brief Clears the output buffer in the shell backend.
      62             :  *
      63             :  * @param sh    Shell pointer
      64             :  */
      65           1 : void shell_backend_dummy_clear_output(const struct shell *sh);
      66             : 
      67             : #ifdef __cplusplus
      68             : }
      69             : #endif
      70             : 
      71             : #endif /* ZEPHYR_INCLUDE_SHELL_DUMMY_H_ */

Generated by: LCOV version 1.14