aboutsummaryrefslogtreecommitdiff
path: root/kernel/include
diff options
context:
space:
mode:
authorLukas Oesch <lukasoesch20@gmail.com>2026-04-08 18:52:11 +0200
committerLukas Oesch <lukasoesch20@gmail.com>2026-04-11 08:05:47 +0200
commitbf90905a5ded3995af5677685bc31228d485e64b (patch)
tree755058d740ae3ae2baafa9965c8207860137bdae /kernel/include
parent869ff69ebae160006e31eb0f24ed927bb65f3c63 (diff)
downloadteachos-bf90905a5ded3995af5677685bc31228d485e64b.tar.xz
teachos-bf90905a5ded3995af5677685bc31228d485e64b.zip
add test block_device
Diffstat (limited to 'kernel/include')
-rw-r--r--kernel/include/kernel/test_support/devices/block_device.hpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/kernel/include/kernel/test_support/devices/block_device.hpp b/kernel/include/kernel/test_support/devices/block_device.hpp
new file mode 100644
index 0000000..2327fc4
--- /dev/null
+++ b/kernel/include/kernel/test_support/devices/block_device.hpp
@@ -0,0 +1,31 @@
+#ifndef TEACHOS_KERNEL_TEST_SUPPORT_DEVICES_BLOCK_DEVICE_HPP
+#define TEACHOS_KERNEL_TEST_SUPPORT_DEVICES_BLOCK_DEVICE_HPP
+
+#include "kernel/devices/block_device.hpp"
+
+#include <kstd/string>
+#include <kstd/vector>
+
+#include <cstddef>
+#include <cstdint>
+
+namespace kernel::tests::devices
+{
+
+ struct block_device : kernel::devices::block_device
+ {
+ block_device(size_t major, size_t minor, kstd::string const & name, size_t block_size);
+
+ auto init() -> bool override;
+
+ auto read_block(size_t block_index, void * buffer) const -> void override;
+ auto write_block(size_t block_index, void const * buffer) -> void override;
+
+ [[nodiscard]] auto size() const -> size_t override;
+
+ kstd::vector<uint8_t> data{};
+ };
+
+} // namespace kernel::tests::devices
+
+#endif \ No newline at end of file