diff options
| author | Felix Morgner <felix.morgner@ost.ch> | 2026-04-01 12:15:25 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@ost.ch> | 2026-04-01 12:15:25 +0200 |
| commit | 1f652b8b5ca5dbea588975466801cb1479f3dda8 (patch) | |
| tree | 2852f1d7cc6d33d0cb06c66fcfcf8c03dac2a112 /kernel/include | |
| parent | 0369fb7c4baa543dfb36ebb39ab53ac7560994ba (diff) | |
| download | teachos-1f652b8b5ca5dbea588975466801cb1479f3dda8.tar.xz teachos-1f652b8b5ca5dbea588975466801cb1479f3dda8.zip | |
kernel/tests: dissolve tests into source tree
Diffstat (limited to 'kernel/include')
| -rw-r--r-- | kernel/include/kernel/tests/cpu.hpp | 18 | ||||
| -rw-r--r-- | kernel/include/kernel/tests/log_buffer.hpp | 32 | ||||
| -rw-r--r-- | kernel/include/kernel/tests/simulated_memory.hpp | 19 |
3 files changed, 69 insertions, 0 deletions
diff --git a/kernel/include/kernel/tests/cpu.hpp b/kernel/include/kernel/tests/cpu.hpp new file mode 100644 index 0000000..81c0c6f --- /dev/null +++ b/kernel/include/kernel/tests/cpu.hpp @@ -0,0 +1,18 @@ +#ifndef TEACHOS_KERNEL_TESTS_CPU_HPP +#define TEACHOS_KERNEL_TESTS_CPU_HPP + +#include <stdexcept> + +namespace kernel::tests::cpu +{ + + struct halt : std::runtime_error + { + halt() + : std::runtime_error{"CPU halt requested!"} + {} + }; + +} // namespace kernel::tests::cpu + +#endif
\ No newline at end of file diff --git a/kernel/include/kernel/tests/log_buffer.hpp b/kernel/include/kernel/tests/log_buffer.hpp new file mode 100644 index 0000000..5f2a1a7 --- /dev/null +++ b/kernel/include/kernel/tests/log_buffer.hpp @@ -0,0 +1,32 @@ +#ifndef KERNEL_TESTS_LOG_BUFFER_HPP +#define KERNEL_TESTS_LOG_BUFFER_HPP + +#include <string> +#include <vector> + +namespace kernel::tests::log_buffer +{ + + //! Append a message to the testing log buffer. + //! + //! @param message The message to append. + auto append(std::string const & message) -> void; + + //! Clear the testing log buffer. + auto clear() -> void; + + //! Get the testing log buffer as a single string. + //! + //! @return The testing log buffer as a single string. + auto flat_messages() -> std::string; + + //! Get the testing log buffer. + //! + //! @note Messages may be split across multiple entries if they are longer than the internal kernel print buffer size. + //! + //! @return The testing log buffer. + auto messages() -> std::vector<std::string> const &; + +} // namespace kernel::tests::log_buffer + +#endif
\ No newline at end of file diff --git a/kernel/include/kernel/tests/simulated_memory.hpp b/kernel/include/kernel/tests/simulated_memory.hpp new file mode 100644 index 0000000..156b1e1 --- /dev/null +++ b/kernel/include/kernel/tests/simulated_memory.hpp @@ -0,0 +1,19 @@ +#ifndef TEACHOS_KERNEL_TESTS_SIMULATED_MEMORY_HPP +#define TEACHOS_KERNEL_TESTS_SIMULATED_MEMORY_HPP + +#include <kstd/units> + +#include <cstddef> + +namespace kernel::tests::simulated_memory +{ + + auto init(kstd::units::bytes size) -> void; + + auto pmm_metadata_base() -> std::byte *; + + auto ram_base() -> std::byte *; + +} // namespace kernel::tests::simulated_memory + +#endif
\ No newline at end of file |
