aboutsummaryrefslogtreecommitdiff
path: root/kernel/src/test_support/log_buffer.cpp
diff options
context:
space:
mode:
authorMarcel Braun <marcel.braun@ost.ch>2026-04-02 08:48:00 +0200
committerMarcel Braun <marcel.braun@ost.ch>2026-04-02 08:48:00 +0200
commit0c01a95325b26151ff3c9a70142f5dc83ff7d53f (patch)
tree9bf034f544ae773b653554a54edfce232f835754 /kernel/src/test_support/log_buffer.cpp
parent022d3e872de9c5a6a52c67f74af13706552330c0 (diff)
parent3eb680cf5bcef626505cac82820996d8db4170d7 (diff)
downloadteachos-0c01a95325b26151ff3c9a70142f5dc83ff7d53f.tar.xz
teachos-0c01a95325b26151ff3c9a70142f5dc83ff7d53f.zip
Merge branch 'fmorgner/develop-SA-FS26/kernel-bht' into 'develop-BA-FS26'
Add experimental support for kernel tests See merge request teachos/kernel!20
Diffstat (limited to 'kernel/src/test_support/log_buffer.cpp')
-rw-r--r--kernel/src/test_support/log_buffer.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/kernel/src/test_support/log_buffer.cpp b/kernel/src/test_support/log_buffer.cpp
new file mode 100644
index 0000000..36ed15e
--- /dev/null
+++ b/kernel/src/test_support/log_buffer.cpp
@@ -0,0 +1,39 @@
+#include "kernel/test_support/log_buffer.hpp"
+
+#include <algorithm>
+#include <string>
+#include <vector>
+
+namespace kernel::tests::log_buffer
+{
+
+ namespace
+ {
+ std::vector<std::string> recorded_messages{};
+ }
+
+ auto append(std::string const & message) -> void
+ {
+ recorded_messages.push_back(message);
+ }
+
+ auto clear() -> void
+ {
+ recorded_messages.clear();
+ }
+
+ auto flat_messages() -> std::string
+ {
+ return std::ranges::fold_left(recorded_messages, std::string{},
+ [](std::string accumulator, std::string const & message) {
+ accumulator += message;
+ return accumulator;
+ });
+ }
+
+ auto messages() -> std::vector<std::string> const &
+ {
+ return recorded_messages;
+ }
+
+} // namespace kernel::tests::log_buffer