diff options
Diffstat (limited to 'tests/stdlib_test.cpp')
-rw-r--r-- | tests/stdlib_test.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/stdlib_test.cpp b/tests/stdlib_test.cpp index e814ef714..9ad96fd81 100644 --- a/tests/stdlib_test.cpp +++ b/tests/stdlib_test.cpp @@ -99,6 +99,18 @@ TEST(stdlib, realpath__ENOENT) { ASSERT_EQ(ENOENT, errno); } +TEST(stdlib, realpath__component_after_non_directory) { + errno = 0; + char* p = realpath("/dev/null/.", NULL); + ASSERT_TRUE(p == NULL); + ASSERT_EQ(ENOTDIR, errno); + + errno = 0; + p = realpath("/dev/null/..", NULL); + ASSERT_TRUE(p == NULL); + ASSERT_EQ(ENOTDIR, errno); +} + TEST(stdlib, realpath) { // Get the name of this executable. char executable_path[PATH_MAX]; |