1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 05:58:11 +00:00

LibCore: Implement four-digit modes for FilePermissionsMask parsing

This commit is contained in:
Tim Schumacher 2022-07-25 14:28:38 +02:00 committed by Brian Gianforcaro
parent 130f04c493
commit 6c4b5775e1
2 changed files with 33 additions and 3 deletions

View file

@ -116,3 +116,24 @@ TEST_CASE(file_permission_mask_parse)
mask = Core::FilePermissionsMask::parse("z+rw"sv);
EXPECT(mask.is_error());
}
TEST_CASE(numeric_mask_special_bits)
{
{
auto mask = Core::FilePermissionsMask::parse("750"sv);
EXPECT(!mask.is_error());
EXPECT_EQ(mask.value().apply(07000), 07750);
}
{
auto mask = Core::FilePermissionsMask::parse("7750"sv);
EXPECT(!mask.is_error());
EXPECT_EQ(mask.value().apply(0), 07750);
}
{
auto mask = Core::FilePermissionsMask::parse("0750"sv);
EXPECT(!mask.is_error());
EXPECT_EQ(mask.value().apply(07000), 0750);
}
}