From e14c571916d2f8f21c379a64750d0cd10498556b Mon Sep 17 00:00:00 2001 From: Liav A Date: Sat, 10 Feb 2024 15:36:39 +0200 Subject: [PATCH] Tests/Kernel: Add test for /dev/loop directory structure --- Tests/Kernel/TestFileSystemDirentTypes.cpp | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/Tests/Kernel/TestFileSystemDirentTypes.cpp b/Tests/Kernel/TestFileSystemDirentTypes.cpp index 963f2bf0b3..f3bd9f0058 100644 --- a/Tests/Kernel/TestFileSystemDirentTypes.cpp +++ b/Tests/Kernel/TestFileSystemDirentTypes.cpp @@ -68,6 +68,31 @@ TEST_CASE(test_devpts_root_directory) EXPECT_EQ(_dirent->d_type, DT_DIR); } +TEST_CASE(test_devloop_root_directory) +{ + auto dirfd = open("/dev/loop/", O_RDONLY | O_DIRECTORY); + auto cleanup_guard = ScopeGuard([&] { + close(dirfd); + }); + + DIR* dir = fdopendir(dirfd); + EXPECT(dir != nullptr); + + auto cleanup_dir_guard = ScopeGuard([&] { + closedir(dir); + }); + + auto* _dirent = readdir(dir); + EXPECT(_dirent != nullptr); + // NOTE: We should see '.' + EXPECT_EQ(_dirent->d_type, DT_DIR); + + _dirent = readdir(dir); + EXPECT(_dirent != nullptr); + // NOTE: We should see '..' + EXPECT_EQ(_dirent->d_type, DT_DIR); +} + TEST_CASE(test_procfs_root_directory) { auto dirfd = open("/proc/", O_RDONLY | O_DIRECTORY);