aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/CMakeLists.txt1
-rw-r--r--kernel/include/kernel/test_support/filesystem/filesystem.hpp22
-rw-r--r--kernel/src/test_support/filesystem/filesystem.cpp17
3 files changed, 40 insertions, 0 deletions
diff --git a/kernel/CMakeLists.txt b/kernel/CMakeLists.txt
index 0025e4c..502efcc 100644
--- a/kernel/CMakeLists.txt
+++ b/kernel/CMakeLists.txt
@@ -104,6 +104,7 @@ else()
"src/test_support/devices/block_device.cpp"
"src/test_support/devices/character_device.cpp"
"src/test_support/filesystem/inode.cpp"
+ "src/test_support/filesystem/filesystem.cpp"
"src/test_support/log_buffer.cpp"
"src/test_support/output_device.cpp"
"src/test_support/page_mapper.cpp"
diff --git a/kernel/include/kernel/test_support/filesystem/filesystem.hpp b/kernel/include/kernel/test_support/filesystem/filesystem.hpp
new file mode 100644
index 0000000..13aade4
--- /dev/null
+++ b/kernel/include/kernel/test_support/filesystem/filesystem.hpp
@@ -0,0 +1,22 @@
+#ifndef TEACHOS_KERNEL_TEST_SUPPORT_FILESYSTEM_FILESYSTEM_HPP
+#define TEACHOS_KERNEL_TEST_SUPPORT_FILESYSTEM_FILESYSTEM_HPP
+
+#include "kernel/filesystem/filesystem.hpp"
+#include "kernel/filesystem/inode.hpp"
+
+#include <kstd/memory>
+
+#include <string_view>
+
+namespace kernel::tests::filesystem
+{
+ struct filesystem : kernel::filesystem::filesystem
+ {
+ filesystem() = default;
+
+ auto lookup(kstd::shared_ptr<kernel::filesystem::inode> const & parent, std::string_view name)
+ -> kstd::shared_ptr<kernel::filesystem::inode> override;
+ };
+} // namespace kernel::tests::filesystem
+
+#endif
diff --git a/kernel/src/test_support/filesystem/filesystem.cpp b/kernel/src/test_support/filesystem/filesystem.cpp
new file mode 100644
index 0000000..225d096
--- /dev/null
+++ b/kernel/src/test_support/filesystem/filesystem.cpp
@@ -0,0 +1,17 @@
+#include "kernel/test_support/filesystem/filesystem.hpp"
+
+#include "kernel/filesystem/inode.hpp"
+#include "kernel/test_support/filesystem/inode.hpp"
+
+#include <kstd/memory>
+
+#include <string_view>
+
+namespace kernel::tests::filesystem
+{
+ auto filesystem::lookup(kstd::shared_ptr<kernel::filesystem::inode> const &, std::string_view)
+ -> kstd::shared_ptr<kernel::filesystem::inode>
+ {
+ return kstd::make_shared<inode>();
+ }
+} // namespace kernel::tests::filesystem \ No newline at end of file