commit 2dd2e2575b0244352aeaef153b3820813bea1dc9
Author: Thomas Schöpping <tschoepp@cit-ec.uni-bielefeld.de>
Date:   Fri Jan 25 13:56:56 2019 +0100

    Enhanced the AMiRo-OS configuration: When AMIROOS_CFG_TESTS_ENABLE is set, the shell is enabled implicitely by AMiRo-OS.
    Before, this logic was handled in the aosconf.h file.

diff --git a/core/inc/aos_confcheck.h b/core/inc/aos_confcheck.h
index 252bcbb..a4eccab 100644
--- a/core/inc/aos_confcheck.h
+++ b/core/inc/aos_confcheck.h
@@ -114,7 +114,13 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
     #error "AMIROOS_CFG_SHELL_MAXARGS not defined in aosconf.h"
   #endif
 
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#else /* AMIROOS_CFG_SHELL_ENABLE == false */
+
+  #if (AMIROOS_CFG_TESTS_ENABLE == true)
+    #pragma message "AMiRo-OS shell enabled implicitely via AMIROOS_CFG_TESTS_ENABLE"
+  #endif
+
+#endif /* AMIROOS_CFG_SHELL_ENABLE */
 
 #endif /* _AMIROOS_CONFCHECK_H_ */
 
diff --git a/core/inc/aos_shell.h b/core/inc/aos_shell.h
index 9d7ebc0..cea8f8e 100644
--- a/core/inc/aos_shell.h
+++ b/core/inc/aos_shell.h
@@ -28,7 +28,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #define _AMIROOS_SHELL_H_
 
 #include <aosconf.h>
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
 #include <hal.h>
 #include <aos_types.h>
 #include <aos_debug.h>
@@ -371,7 +371,7 @@ extern "C" {
 }
 #endif
 
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) */
 
 #endif /* _AMIROOS_SHELL_H_ */
 
diff --git a/core/inc/aos_system.h b/core/inc/aos_system.h
index 7db756a..7add184 100644
--- a/core/inc/aos_system.h
+++ b/core/inc/aos_system.h
@@ -167,7 +167,7 @@ typedef struct aos_system {
     event_source_t os;
   } events;
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
   /**
    * @brief   Pointer to the shell object.
    */
@@ -191,7 +191,7 @@ extern aos_system_t aos;
 #ifdef __cplusplus
 extern "C" {
 #endif
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
   void aosSysInit(const char* shellPrompt);
 #else
   void aosSysInit(void);
diff --git a/core/src/aos_main.cpp b/core/src/aos_main.cpp
index 8bd0756..a851ba6 100644
--- a/core/src/aos_main.cpp
+++ b/core/src/aos_main.cpp
@@ -108,12 +108,12 @@ static event_listener_t _eventListenerOS;
  */
 static AosIOChannel _stdiochannel;
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   I/O shell channel for the programmer interface.
  */
 static AosShellChannel _stdshellchannel;
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)*/
 #endif /* defined(MODULE_HAL_PROGIF) */
 
 /*
@@ -922,7 +922,7 @@ int main(void)
 #endif
 
   // AMiRo-OS and custom OS additions (if any)
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
   aosSysInit(moduleShellPrompt);
 #else
   aosSysInit();
@@ -992,7 +992,7 @@ int main(void)
   aosIOChannelInit(&_stdiochannel, (BaseAsynchronousChannel*)&MODULE_HAL_PROGIF);
   aosIOChannelOutputEnable(&_stdiochannel);
   aosIOStreamAddChannel(&aos.iostream, &_stdiochannel);
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
   aosShellChannelInit(&_stdshellchannel, (BaseAsynchronousChannel*)&MODULE_HAL_PROGIF);
   aosShellChannelInputEnable(&_stdshellchannel);
   aosShellChannelOutputEnable(&_stdshellchannel);
diff --git a/core/src/aos_shell.c b/core/src/aos_shell.c
index bf990b8..8368a48 100644
--- a/core/src/aos_shell.c
+++ b/core/src/aos_shell.c
@@ -27,7 +27,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 #include <aos_shell.h>
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
 #include <aos_debug.h>
 #include <aos_time.h>
 #include <aos_system.h>
@@ -1551,6 +1551,6 @@ void aosShellThread(void* shell)
   // no chSysUnlock() required since the thread has been terminated an all waiting threads have been woken up
 }
 
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)*/
 
 /** @} */
diff --git a/core/src/aos_system.c b/core/src/aos_system.c
index e40d1ec..0540b8e 100644
--- a/core/src/aos_system.c
+++ b/core/src/aos_system.c
@@ -55,14 +55,14 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /* forward declarations */
 static void _printSystemInfo(BaseSequentialStream* stream);
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
 static int _shellcmd_configcb(BaseSequentialStream* stream, int argc, char* argv[]);
 static int _shellcmd_infocb(BaseSequentialStream* stream, int argc, char* argv[]);
 static int _shellcmd_shutdowncb(BaseSequentialStream* stream, int argc, char* argv[]);
 #if (AMIROOS_CFG_TESTS_ENABLE == true)
 static int _shellcmd_kerneltestcb(BaseSequentialStream* stream, int argc, char* argv[]);
 #endif /* AMIROOS_CFG_TESTS_ENABLE == true */
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) */
 
 /**
  * @brief   Timer to accumulate system uptime.
@@ -103,7 +103,7 @@ static float _syssyncskew;
 #define SYSTEM_SYSSYNCSKEW_LPFACTOR   (0.1f / AOS_SYSTEM_TIME_RESOLUTION)
 #endif /* (AMIROOS_CFG_SSSP_ENABLE == true) && (AMIROOS_CFG_SSSP_MASTER != true) && (AMIROOS_CFG_PROFILE == true) */
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   Shell thread working area.
  */
@@ -149,7 +149,6 @@ static aos_shellcommand_t _shellcmd_shutdown = {
   /* callback */ _shellcmd_shutdowncb,
   /* next     */ NULL,
 };
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
 
 #if (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
@@ -161,6 +160,7 @@ static aos_shellcommand_t _shellcmd_kerneltest = {
   /* next     */ NULL,
 };
 #endif /* AMIROOS_CFG_TESTS_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) */
 
 /**
  * @brief   Global system object.
@@ -315,7 +315,7 @@ static void _printSystemInfo(BaseSequentialStream* stream)
   return;
 }
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   Callback function for the system:config shell command.
  *
@@ -517,7 +517,6 @@ static int _shellcmd_infocb(BaseSequentialStream* stream, int argc, char* argv[]
 #endif /* AMIROOS_CFG_SSSP_MASTER != true && AMIROOS_CFG_PROFILE == true */
   _printSystemInfoSeparator(stream, '=', SYSTEM_INFO_WIDTH);
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
   // print shell info
   chprintf(stream, "System shell information:\n");
   chprintf(stream, "\tnumber of commands:      %u\n", aosShellCountCommands(&aos.shell));
@@ -530,7 +529,6 @@ static int _shellcmd_infocb(BaseSequentialStream* stream, int argc, char* argv[]
 #endif /* CH_DBG_FILL_THREADS == TRUE */
 #endif /* AMIROOS_CFG_DBG == true */
   _printSystemInfoSeparator(stream, '=', SYSTEM_INFO_WIDTH);
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
 
   return AOS_OK;
 }
@@ -630,7 +628,7 @@ static int _shellcmd_kerneltestcb(BaseSequentialStream* stream, int argc, char*
   return retval;
 }
 #endif /* AMIROOS_CFG_TESTS_ENABLE == true */
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) */
 
 // suppress warning in case no interrupt GPIOs are defined
 #pragma GCC diagnostic push
@@ -760,7 +758,7 @@ static void _sysSyncTimerCallback(void* par)
  *
  * @param[in] shellPrompt   String to be printed as prompt of the system shell.
  */
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 void aosSysInit(const char* shellPrompt)
 #else
 void aosSysInit(void)
@@ -827,7 +825,7 @@ void aosSysInit(void)
   MODULE_INIT_INTERRUPTS();
 #endif
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
   /* init shell */
   aosShellInit(&aos.shell,
                &aos.events.os,
@@ -843,7 +841,7 @@ void aosSysInit(void)
 #if (AMIROOS_CFG_TESTS_ENABLE == true)
   aosShellAddCommand(&aos.shell, &_shellcmd_kerneltest);
 #endif
-#endif /* AMIROOS_CFG_SHELL_ENABLE == true */
+#endif /* (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) */
 
   return;
 }
@@ -875,7 +873,7 @@ inline void aosSysStart(void)
   _printSystemInfo((BaseSequentialStream*)&aos.iostream);
   aosprintf("\n");
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
   // start system shell thread
 #if (CH_CFG_USE_THREADHIERARCHY == TRUE)
   aos.shell.thread = chThdCreateStatic(_shell_wa, sizeof(_shell_wa), AMIROOS_CFG_SHELL_THREADPRIO, aosShellThread, &aos.shell, &ch.mainthread);
@@ -1056,7 +1054,7 @@ void aosSysShutdownInit(aos_shutdown_t shutdown)
  */
 void aosSysStop(void)
 {
-#if (AMIROOS_CFG_SHELL_ENABLE == true)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true)
   chThdWait(aos.shell.thread);
 #endif
 
diff --git a/modules/DiWheelDrive_1-1/aosconf.h b/modules/DiWheelDrive_1-1/aosconf.h
index 5f2d2f6..2f22601 100644
--- a/modules/DiWheelDrive_1-1/aosconf.h
+++ b/modules/DiWheelDrive_1-1/aosconf.h
@@ -62,6 +62,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /**
  * @brief   Flag to enable/disable unit tests.
+ * @note    Setting this flag will implicitely enable the shell.
  */
 #if !defined(OS_CFG_TESTS_ENABLE)
   #define AMIROOS_CFG_TESTS_ENABLE              true
@@ -178,9 +179,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /**
  * @brief   Shell enable flag.
  */
-#if !defined(OS_CFG_SHELL_ENABLE) && (AMIROOS_CFG_TESTS_ENABLE != true)
-  #define AMIROOS_CFG_SHELL_ENABLE              true
-#elif (AMIROOS_CFG_TESTS_ENABLE == true)
+#if !defined(OS_CFG_SHELL_ENABLE)
   #define AMIROOS_CFG_SHELL_ENABLE              true
 #else
   #define AMIROOS_CFG_SHELL_ENABLE              OS_CFG_SHELL_ENABLE
diff --git a/modules/DiWheelDrive_1-1/module.c b/modules/DiWheelDrive_1-1/module.c
index 94edb1b..9a57ff8 100644
--- a/modules/DiWheelDrive_1-1/module.c
+++ b/modules/DiWheelDrive_1-1/module.c
@@ -354,7 +354,7 @@ ROMCONST apalControlGpio_t moduleGpioSysWarmrst = {
  */
 /*===========================================================================*/
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 ROMCONST char* moduleShellPrompt = "DiWheelDrive";
 #endif
 
diff --git a/modules/DiWheelDrive_1-1/module.h b/modules/DiWheelDrive_1-1/module.h
index 966d1ee..c7c7b39 100644
--- a/modules/DiWheelDrive_1-1/module.h
+++ b/modules/DiWheelDrive_1-1/module.h
@@ -290,7 +290,7 @@ extern ROMCONST apalControlGpio_t moduleGpioSysWarmrst;
  */
 #define MODULE_OS_IOEVENTFLAGS_ACCELINT         AOS_IOEVENT_FLAG(GPIOB_ACCEL_INT_N)
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   Shell prompt text.
  */
diff --git a/modules/LightRing_1-0/aosconf.h b/modules/LightRing_1-0/aosconf.h
index 8c97bc0..5291e51 100644
--- a/modules/LightRing_1-0/aosconf.h
+++ b/modules/LightRing_1-0/aosconf.h
@@ -62,6 +62,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /**
  * @brief   Flag to enable/disable unit tests.
+ * @note    Setting this flag will implicitely enable the shell.
  */
 #if !defined(OS_CFG_TESTS_ENABLE)
   #define AMIROOS_CFG_TESTS_ENABLE              true
@@ -178,9 +179,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /**
  * @brief   Shell enable flag.
  */
-#if !defined(OS_CFG_SHELL_ENABLE) && (AMIROOS_CFG_TESTS_ENABLE != true)
-  #define AMIROOS_CFG_SHELL_ENABLE              true
-#elif (AMIROOS_CFG_TESTS_ENABLE == true)
+#if !defined(OS_CFG_SHELL_ENABLE)
   #define AMIROOS_CFG_SHELL_ENABLE              true
 #else
   #define AMIROOS_CFG_SHELL_ENABLE              OS_CFG_SHELL_ENABLE
diff --git a/modules/LightRing_1-0/module.c b/modules/LightRing_1-0/module.c
index a928c98..40caf2e 100644
--- a/modules/LightRing_1-0/module.c
+++ b/modules/LightRing_1-0/module.c
@@ -232,7 +232,7 @@ ROMCONST apalControlGpio_t moduleGpioSysSync = {
  */
 /*===========================================================================*/
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 ROMCONST char* moduleShellPrompt = "LightRing";
 #endif
 
diff --git a/modules/LightRing_1-0/module.h b/modules/LightRing_1-0/module.h
index 8e949b7..21321da 100644
--- a/modules/LightRing_1-0/module.h
+++ b/modules/LightRing_1-0/module.h
@@ -185,7 +185,7 @@ extern ROMCONST apalControlGpio_t moduleGpioSysSync;
  */
 #define MODULE_OS_IOEVENTFLAGS_SYSSYNC          AOS_IOEVENT_FLAG(GPIOD_SYS_INT_N)
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   Shell prompt text.
  */
diff --git a/modules/PowerManagement_1-1/aosconf.h b/modules/PowerManagement_1-1/aosconf.h
index 91a190d..adc5746 100644
--- a/modules/PowerManagement_1-1/aosconf.h
+++ b/modules/PowerManagement_1-1/aosconf.h
@@ -62,6 +62,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /**
  * @brief   Flag to enable/disable unit tests.
+ * @note    Setting this flag will implicitely enable the shell.
  */
 #if !defined(OS_CFG_TESTS_ENABLE)
   #define AMIROOS_CFG_TESTS_ENABLE              true
@@ -178,9 +179,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /**
  * @brief   Shell enable flag.
  */
-#if !defined(OS_CFG_SHELL_ENABLE) && (AMIROOS_CFG_TESTS_ENABLE != true)
-  #define AMIROOS_CFG_SHELL_ENABLE              true
-#elif (AMIROOS_CFG_TESTS_ENABLE == true)
+#if !defined(OS_CFG_SHELL_ENABLE)
   #define AMIROOS_CFG_SHELL_ENABLE              true
 #else
   #define AMIROOS_CFG_SHELL_ENABLE              OS_CFG_SHELL_ENABLE
diff --git a/modules/PowerManagement_1-1/module.c b/modules/PowerManagement_1-1/module.c
index 11fa65f..99214e3 100644
--- a/modules/PowerManagement_1-1/module.c
+++ b/modules/PowerManagement_1-1/module.c
@@ -548,7 +548,7 @@ ROMCONST apalControlGpio_t moduleGpioChargeEn2 = {
  */
 /*===========================================================================*/
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 ROMCONST char* moduleShellPrompt = "PowerManagement";
 #endif
 
diff --git a/modules/PowerManagement_1-1/module.h b/modules/PowerManagement_1-1/module.h
index b561cf5..2b34590 100644
--- a/modules/PowerManagement_1-1/module.h
+++ b/modules/PowerManagement_1-1/module.h
@@ -384,7 +384,7 @@ extern ROMCONST apalControlGpio_t moduleGpioChargeEn2;
  */
 #define MODULE_OS_IOEVENTFLAGS_SYSUARTUP        AOS_IOEVENT_FLAG(GPIOB_SYS_UART_UP)
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   Shell prompt text.
  */
diff --git a/modules/STM32F4Discovery/aosconf.h b/modules/STM32F4Discovery/aosconf.h
index ab85a62..7cef204 100644
--- a/modules/STM32F4Discovery/aosconf.h
+++ b/modules/STM32F4Discovery/aosconf.h
@@ -62,6 +62,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 /**
  * @brief   Flag to enable/disable unit tests.
+ * @note    Setting this flag will implicitely enable the shell.
  */
 #if !defined(OS_CFG_TESTS_ENABLE)
   #define AMIROOS_CFG_TESTS_ENABLE              true
@@ -178,9 +179,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 /**
  * @brief   Shell enable flag.
  */
-#if !defined(OS_CFG_SHELL_ENABLE) && (AMIROOS_CFG_TESTS_ENABLE != true)
-  #define AMIROOS_CFG_SHELL_ENABLE              true
-#elif (AMIROOS_CFG_TESTS_ENABLE == true)
+#if !defined(OS_CFG_SHELL_ENABLE)
   #define AMIROOS_CFG_SHELL_ENABLE              true
 #else
   #define AMIROOS_CFG_SHELL_ENABLE              OS_CFG_SHELL_ENABLE
diff --git a/modules/STM32F4Discovery/module.c b/modules/STM32F4Discovery/module.c
index 452e5ca..8bdf1ef 100644
--- a/modules/STM32F4Discovery/module.c
+++ b/modules/STM32F4Discovery/module.c
@@ -149,7 +149,7 @@ ROMCONST apalControlGpio_t moduleGpioUserButton = {
  */
 /*===========================================================================*/
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 ROMCONST char* moduleShellPrompt = "STM32F407Discovery";
 #endif
 
diff --git a/modules/STM32F4Discovery/module.h b/modules/STM32F4Discovery/module.h
index de5afa0..f01d0e2 100644
--- a/modules/STM32F4Discovery/module.h
+++ b/modules/STM32F4Discovery/module.h
@@ -134,7 +134,7 @@ extern ROMCONST apalControlGpio_t moduleGpioUserButton;
  */
 #define MODULE_OS_IOEVENTFLAGS_USERBUTTON       AOS_IOEVENT_FLAG(GPIOA_BUTTON)
 
-#if (AMIROOS_CFG_SHELL_ENABLE == true) || defined(__DOXYGEN__)
+#if (AMIROOS_CFG_SHELL_ENABLE == true) || (AMIROOS_CFG_TESTS_ENABLE == true) || defined(__DOXYGEN__)
 /**
  * @brief   Shell prompt text.
  */
