diff options
| author | Marcel Braun <marcel.braun@ost.ch> | 2026-04-19 17:15:40 +0200 |
|---|---|---|
| committer | Marcel Braun <marcel.braun@ost.ch> | 2026-04-19 17:15:40 +0200 |
| commit | 3441e7e164d8e5e8413a1eb47e3e9f3c824ed2d0 (patch) | |
| tree | 8204fad4c5882f7a371410086b12298f88c73a8f /kernel/src/filesystem/vfs.tests.cpp | |
| parent | f642efb5cf199d3bbb8e3b01c451c71a1fbeabf8 (diff) | |
| parent | 1356405c9fc6d54cf9da4d5f6fd54c55d51ce66d (diff) | |
| download | teachos-3441e7e164d8e5e8413a1eb47e3e9f3c824ed2d0.tar.xz teachos-3441e7e164d8e5e8413a1eb47e3e9f3c824ed2d0.zip | |
Merge branch 'refactoring' into 'develop-BA-FS26'
Refactoring
See merge request teachos/kernel!26
Diffstat (limited to 'kernel/src/filesystem/vfs.tests.cpp')
| -rw-r--r-- | kernel/src/filesystem/vfs.tests.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/kernel/src/filesystem/vfs.tests.cpp b/kernel/src/filesystem/vfs.tests.cpp index 12dce84..eba157d 100644 --- a/kernel/src/filesystem/vfs.tests.cpp +++ b/kernel/src/filesystem/vfs.tests.cpp @@ -1,7 +1,9 @@ #include "kernel/filesystem/vfs.hpp" +#include "kernel/filesystem/open_file_description.hpp" #include "kernel/test_support/filesystem/storage_boot_module_vfs_fixture.hpp" +#include <kstd/memory> #include <kstd/vector> #include <catch2/catch_test_macros.hpp> @@ -178,11 +180,15 @@ SCENARIO_METHOD(kernel::tests::filesystem::storage_boot_module_vfs_fixture, "VFS auto & vfs = kernel::filesystem::vfs::get(); REQUIRE(vfs.do_mount("/archiv/2024.img", "/information") == kernel::filesystem::vfs::operation_result::success); - auto sheep_1 = vfs.open("/information/sheep_1.txt"); - REQUIRE(sheep_1 != nullptr); + auto info_1 = vfs.open("/information/info_1.txt"); + REQUIRE(info_1 == nullptr); + + auto dentry = vfs.open("/information/sheep_1.txt"); + REQUIRE(dentry != nullptr); + auto sheep_1_ofd = kstd::make_shared<kernel::filesystem::open_file_description>(dentry->get_inode()); kstd::vector<std::byte> buffer(7); - auto bytes_read = sheep_1->read(buffer.data(), buffer.size()); + auto bytes_read = sheep_1_ofd->read(buffer.data(), buffer.size()); std::string_view buffer_as_str{reinterpret_cast<char *>(buffer.data()), bytes_read}; REQUIRE(buffer_as_str == "sheep_1"); @@ -204,13 +210,16 @@ SCENARIO_METHOD(kernel::tests::filesystem::storage_boot_module_vfs_fixture, "VFS REQUIRE(sheep_1 != nullptr); REQUIRE(goat_1 != nullptr); + auto sheep_1_ofd = kstd::make_shared<kernel::filesystem::open_file_description>(sheep_1->get_inode()); + auto goat_1_ofd = kstd::make_shared<kernel::filesystem::open_file_description>(goat_1->get_inode()); + kstd::vector<std::byte> sheep_buffer(7); - auto bytes_read = sheep_1->read(sheep_buffer.data(), sheep_buffer.size()); + auto bytes_read = sheep_1_ofd->read(sheep_buffer.data(), sheep_buffer.size()); std::string_view buffer_as_str{reinterpret_cast<char *>(sheep_buffer.data()), bytes_read}; REQUIRE(buffer_as_str == "sheep_1"); kstd::vector<std::byte> goat_buffer(6); - bytes_read = goat_1->read(goat_buffer.data(), goat_buffer.size()); + bytes_read = goat_1_ofd->read(goat_buffer.data(), goat_buffer.size()); buffer_as_str = std::string_view{reinterpret_cast<char *>(goat_buffer.data()), bytes_read}; REQUIRE(buffer_as_str == "goat_1"); |
