Skip to content

Commit 4252db9

Browse files
committed
test.cpp: added isAbsolutePath() tests from Cppcheck
1 parent 78c5078 commit 4252db9

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

test.cpp

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3246,6 +3246,26 @@ static void safe_api()
32463246
#endif
32473247
}
32483248

3249+
static void isAbsolutePath() {
3250+
#ifdef _WIN32
3251+
ASSERT_EQUALS(true, simplecpp::isAbsolutePath("C:\\foo\\bar"));
3252+
ASSERT_EQUALS(true, simplecpp::isAbsolutePath("C:/foo/bar"));
3253+
ASSERT_EQUALS(true, simplecpp::isAbsolutePath("\\\\foo\\bar"));
3254+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("foo\\bar"));
3255+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("foo/bar"));
3256+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("foo.cpp"));
3257+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("C:foo.cpp"));
3258+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("C:foo\\bar.cpp"));
3259+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("bar.cpp"));
3260+
//ASSERT_EQUALS(true, simplecpp::isAbsolutePath("\\")); // TODO
3261+
#else
3262+
ASSERT_EQUALS(true, simplecpp::isAbsolutePath("/foo/bar"));
3263+
//ASSERT_EQUALS(true, simplecpp::isAbsolutePath("/")); // TODO
3264+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("foo/bar"));
3265+
ASSERT_EQUALS(false, simplecpp::isAbsolutePath("foo.cpp"));
3266+
#endif
3267+
}
3268+
32493269
// crashes detected by fuzzer
32503270
static void fuzz_crash()
32513271
{
@@ -3525,6 +3545,8 @@ int main(int argc, char **argv)
35253545

35263546
TEST_CASE(safe_api);
35273547

3548+
TEST_CASE(isAbsolutePath);
3549+
35283550
TEST_CASE(fuzz_crash);
35293551

35303552
TEST_CASE(leak);

0 commit comments

Comments
 (0)