[PATCH 4/8] libtest: Add T_puts()

Sebastian Huber sebastian.huber at embedded-brains.de
Thu Aug 13 10:11:29 UTC 2020


Update #3199.
---
 cpukit/include/rtems/test.h |  2 ++
 cpukit/libtest/t-test.c     | 24 ++++++++++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/cpukit/include/rtems/test.h b/cpukit/include/rtems/test.h
index a3900c1285..212d4a5ae2 100644
--- a/cpukit/include/rtems/test.h
+++ b/cpukit/include/rtems/test.h
@@ -673,6 +673,8 @@ int T_printf(char const *, ...);
 
 int T_vprintf(char const *, va_list);
 
+int T_puts(const char *, size_t);
+
 int T_snprintf(char *, size_t, const char *, ...);
 
 void T_log(T_verbosity, char const *, ...);
diff --git a/cpukit/libtest/t-test.c b/cpukit/libtest/t-test.c
index 92aed62b9b..ce9af0498b 100644
--- a/cpukit/libtest/t-test.c
+++ b/cpukit/libtest/t-test.c
@@ -276,6 +276,30 @@ T_vprintf(char const *fmt, va_list ap)
 	return len;
 }
 
+static int
+T_do_puts(T_context *ctx, const char *buf, size_t len)
+{
+	if (T_do_is_runner(ctx)) {
+		size_t i;
+
+		T_output_buffer_drain(ctx);
+
+		for (i = 0; i < len; ++i) {
+			(*ctx->putchar)(buf[i], ctx->putchar_arg);
+		}
+	} else {
+		len = T_output_buffer_fill(ctx, buf, len);
+	}
+
+	return len;
+}
+
+int
+T_puts(const char *buf, size_t len)
+{
+	return T_do_puts(&T_instance, buf, len);
+}
+
 static int
 T_cpu(void)
 {
-- 
2.26.2



More information about the devel mailing list