diff options
| author | Lukas Oesch <lukasoesch20@gmail.com> | 2026-04-08 22:57:55 +0200 |
|---|---|---|
| committer | Lukas Oesch <lukasoesch20@gmail.com> | 2026-04-11 08:05:52 +0200 |
| commit | 60118b1df5196c4e416ddd6ad2a40be062f68251 (patch) | |
| tree | 3bc334a5a8de7db4a720f9039b262a1e8ec21ab0 /kernel/src/filesystem/devfs/inode.tests.cpp | |
| parent | 643cbff68aa0a5e029b9ce46eb69846c8b01dca7 (diff) | |
| download | teachos-60118b1df5196c4e416ddd6ad2a40be062f68251.tar.xz teachos-60118b1df5196c4e416ddd6ad2a40be062f68251.zip | |
add devfs and rootfs inode tests
Diffstat (limited to 'kernel/src/filesystem/devfs/inode.tests.cpp')
| -rw-r--r-- | kernel/src/filesystem/devfs/inode.tests.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/kernel/src/filesystem/devfs/inode.tests.cpp b/kernel/src/filesystem/devfs/inode.tests.cpp new file mode 100644 index 0000000..50e34a7 --- /dev/null +++ b/kernel/src/filesystem/devfs/inode.tests.cpp @@ -0,0 +1,54 @@ +#include "kernel/filesystem/devfs/inode.hpp" + +#include <kstd/memory> +#include <kstd/print> +#include <kstd/vector> + +#include <catch2/catch_test_macros.hpp> + +#include <cstdint> + +SCENARIO("Devfs inode creation", "[filesystem][devfs][inode]") +{ + GIVEN("a devfs inode") + { + auto inode = kernel::filesystem::devfs::inode{}; + + THEN("the inode has the correct kind") + { + REQUIRE(inode.is_directory()); + REQUIRE_FALSE(inode.is_device()); + REQUIRE_FALSE(inode.is_regular()); + } + } +} + +SCENARIO("Devfs inode read/write", "[filesystem][devfs][inode]") +{ + GIVEN("a devfs inode") + { + auto inode = kernel::filesystem::devfs::inode{}; + + WHEN("attempting to read from the devfs inode") + { + kstd::vector<uint8_t> buffer(512); + auto bytes_read = inode.read(buffer.data(), 0, buffer.size()); + + THEN("no bytes are read") + { + REQUIRE(bytes_read == 0); + } + } + + WHEN("attempting to write to the devfs inode") + { + kstd::vector<uint8_t> buffer(512); + auto bytes_written = inode.write(buffer.data(), 0, buffer.size()); + + THEN("no bytes are written") + { + REQUIRE(bytes_written == 0); + } + } + } +} |
