summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Donchevskii <ivan.donchevskii@qt.io>2018-05-17 16:23:31 +0200
committerIvan Donchevskii <ivan.donchevskii@qt.io>2018-05-22 09:23:31 +0000
commitda2e6b982b1dc46ac0c49fe0315d2fe0a7e0cc77 (patch)
tree7676fd612214330e423361d6cef3db4a29466b91
parent1944b945750511648425d0427679672afa922dc8 (diff)
downloadqt-creator-da2e6b982b1dc46ac0c49fe0315d2fe0a7e0cc77.tar.gz
Unit tests: Fix undefined behavior in NativeFilePathView tests
Do not counstruct NativeFilePathView from temporary object. Change-Id: Ifcd6bc4878f6949e98de44089a2c2b3feca4795a Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
-rw-r--r--tests/unit/unittest/nativefilepathview-test.cpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/tests/unit/unittest/nativefilepathview-test.cpp b/tests/unit/unittest/nativefilepathview-test.cpp
index eb8ce113db..305fa80c4c 100644
--- a/tests/unit/unittest/nativefilepathview-test.cpp
+++ b/tests/unit/unittest/nativefilepathview-test.cpp
@@ -50,28 +50,32 @@ TEST(NativeFilePathView, FilePathSlashForEmptyPath)
TEST(NativeFilePathView, FilePathSlashForSingleSlash)
{
- NativeFilePathView filePath(native("/"));
+ Utils::PathString nativePath = native("/");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.slashIndex(), 0);
}
TEST(NativeFilePathView, FilePathSlashForFileInRoot)
{
- NativeFilePathView filePath(native("/file.h"));
+ Utils::PathString nativePath = native("/file.h");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.slashIndex(), 0);
}
TEST(NativeFilePathView, FilePathSlashForSomeLongerPath)
{
- NativeFilePathView filePath(native("/path/to/some/file.h"));
+ Utils::PathString nativePath = native("/path/to/some/file.h");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.slashIndex(), 13);
}
TEST(NativeFilePathView, FilePathSlashForFileNameOnly)
{
- NativeFilePathView filePath(native("file.h"));
+ Utils::PathString nativePath = native("file.h");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.slashIndex(), -1);
}
@@ -85,14 +89,16 @@ TEST(NativeFilePathView, DirectoryPathForEmptyPath)
TEST(NativeFilePathView, DirectoryPathForSingleSlashPath)
{
- NativeFilePathView filePath{native("/")};
+ Utils::PathString nativePath = native("/");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.directory(), "");
}
TEST(NativeFilePathView, DirectoryPathForLongerPath)
{
- NativeFilePathView filePath{native("/path/to/some/file.h")};
+ Utils::PathString nativePath = native("/path/to/some/file.h");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.directory(), native("/path/to/some"));
}
@@ -113,14 +119,16 @@ TEST(NativeFilePathView, FileNameForEmptyPath)
TEST(NativeFilePathView, FileNameForSingleSlashPath)
{
- NativeFilePathView filePath{native("/")};
+ Utils::PathString nativePath = native("/");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.name(), "");
}
TEST(NativeFilePathView, FileNameForLongerPath)
{
- NativeFilePathView filePath{native("/path/to/some/file.h")};
+ Utils::PathString nativePath = native("/path/to/some/file.h");
+ NativeFilePathView filePath(nativePath);
ASSERT_THAT(filePath.name(), "file.h");
}