[PATCH 1/2] libtest: Set test printer in rtems_test_run()

Sebastian Huber sebastian.huber at embedded-brains.de
Wed Dec 13 16:30:22 UTC 2023


Route the test output through T_vprintf().
---
 cpukit/libtest/testrun.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/cpukit/libtest/testrun.c b/cpukit/libtest/testrun.c
index 0d392e4581..1fc8c82824 100644
--- a/cpukit/libtest/testrun.c
+++ b/cpukit/libtest/testrun.c
@@ -3,13 +3,13 @@
 /**
  * @file
  *
- * @ingroup RTEMSAPI
+ * @ingroup RTEMSTest
  *
- * @brief Implementation of rtems_test_run_default().
+ * @brief This source file provides the implementation of rtems_test_run().
  */
 
 /*
- * Copyright (C) 2020 embedded brains GmbH & Co. KG
+ * Copyright (C) 2020, 2023 embedded brains GmbH & Co. KG
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -38,6 +38,7 @@
 #endif
 
 #include <rtems/test-info.h>
+#include <rtems/test-printer.h>
 #include <rtems/test.h>
 
 #include <stdlib.h>
@@ -73,6 +74,12 @@ static const T_config config = {
   .actions = actions
 };
 
+static int printer(void *context, const char *fmt, va_list ap)
+{
+  (void) context;
+  return T_vprintf(fmt, ap);
+}
+
 void rtems_test_run(
   rtems_task_argument    arg,
   const RTEMS_TEST_STATE state
@@ -80,6 +87,7 @@ void rtems_test_run(
 {
   (void) arg;
 
+  rtems_test_printer.printer = printer;
   rtems_test_begin( rtems_test_name, state );
   T_register();
 
-- 
2.35.3



More information about the devel mailing list