1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 04:37:34 +00:00

Tests: Add test coverage for sys$unveil(..) argument validation

This commit is contained in:
Brian Gianforcaro 2021-07-23 08:23:29 -07:00 committed by Andreas Kling
parent baec9e2d2d
commit fa448456a9

View file

@ -5,8 +5,36 @@
*/
#include <LibTest/TestCase.h>
#include <errno.h>
#include <unistd.h>
TEST_CASE(test_argument_validation)
{
auto res = unveil("/etc", "aaaaaaaaaaaa");
EXPECT_EQ(res, -1);
EXPECT_EQ(errno, EINVAL);
res = unveil(nullptr, "r");
EXPECT_EQ(res, -1);
EXPECT_EQ(errno, EINVAL);
res = unveil("/etc", nullptr);
EXPECT_EQ(res, -1);
EXPECT_EQ(errno, EINVAL);
res = unveil("", "r");
EXPECT_EQ(res, -1);
EXPECT_EQ(errno, EINVAL);
res = unveil("test", "r");
EXPECT_EQ(res, -1);
EXPECT_EQ(errno, EINVAL);
res = unveil("/etc", "f");
EXPECT_EQ(res, -1);
EXPECT_EQ(errno, EINVAL);
}
TEST_CASE(test_failures)
{
auto res = unveil("/etc", "r");