1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 12:07:45 +00:00

Tests: Convert LibC exec unit test to be LibTest based.

This commit is contained in:
Brian Gianforcaro 2021-04-28 20:08:02 -07:00 committed by Andreas Kling
parent 8d8535f297
commit 64d7a8b7aa
2 changed files with 7 additions and 7 deletions

View file

@ -3,6 +3,7 @@ set(TEST_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/strlcpy-correctness.cpp ${CMAKE_CURRENT_SOURCE_DIR}/strlcpy-correctness.cpp
${CMAKE_CURRENT_SOURCE_DIR}/TestLibCTime.cpp ${CMAKE_CURRENT_SOURCE_DIR}/TestLibCTime.cpp
${CMAKE_CURRENT_SOURCE_DIR}/TestLibCMkTemp.cpp ${CMAKE_CURRENT_SOURCE_DIR}/TestLibCMkTemp.cpp
${CMAKE_CURRENT_SOURCE_DIR}/TestLibCExec.cpp
) )
file(GLOB CMD_SOURCES CONFIGURE_DEPENDS "*.cpp") file(GLOB CMD_SOURCES CONFIGURE_DEPENDS "*.cpp")

View file

@ -4,11 +4,12 @@
* SPDX-License-Identifier: BSD-2-Clause * SPDX-License-Identifier: BSD-2-Clause
*/ */
#include <LibTest/TestCase.h>
#include <fcntl.h> #include <fcntl.h>
#include <stdio.h> #include <stdio.h>
#include <unistd.h> #include <unistd.h>
int main() TEST_CASE(exec_should_not_search_current_directory)
{ {
int fd = open("hax", O_CREAT | O_RDWR, 0755); int fd = open("hax", O_CREAT | O_RDWR, 0755);
ftruncate(fd, 0); ftruncate(fd, 0);
@ -16,11 +17,9 @@ int main()
int rc = execlp("hax", "hax", nullptr); int rc = execlp("hax", "hax", nullptr);
int saved_errno = errno; int saved_errno = errno;
perror("execlp");
unlink("hax"); unlink("hax");
if (rc == -1 && saved_errno == ENOEXEC) {
printf("FAIL\n"); EXPECT_EQ(rc, -1);
return 1; EXPECT_NE(saved_errno, ENOEXEC);
}
printf("PASS\n");
return 0;
} }