From fc11380e07d6ab4f48834049ee73781c493caabb Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Fri, 3 May 2019 08:35:04 +0300 Subject: [PATCH] Fix unit tests compilation + initialization order Amends commit cc9d246b028c518d1fc01fc8318f0945949040d3. Change-Id: I688df432cd03f440ec6c15ca5402d94430ce74f8 Reviewed-by: Nikolai Kosjar --- src/plugins/projectexplorer/gcctoolchain.cpp | 4 ++-- tests/unit/mockup/projectexplorer/toolchain.h | 3 ++- .../unittest/compilationdatabaseutils-test.cpp | 15 +++++++++------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/plugins/projectexplorer/gcctoolchain.cpp b/src/plugins/projectexplorer/gcctoolchain.cpp index c11552582a6..1ce47f0c1a4 100644 --- a/src/plugins/projectexplorer/gcctoolchain.cpp +++ b/src/plugins/projectexplorer/gcctoolchain.cpp @@ -245,8 +245,8 @@ GccToolChain::GccToolChain(Detection d) : GccToolChain::GccToolChain(Core::Id typeId, Detection d) : ToolChain(typeId, d), - m_predefinedMacrosCache(std::make_shared>()), - m_headerPathsCache(std::make_shared>()) + m_headerPathsCache(std::make_shared>()), + m_predefinedMacrosCache(std::make_shared>()) { } void GccToolChain::setCompilerCommand(const FileName &path) diff --git a/tests/unit/mockup/projectexplorer/toolchain.h b/tests/unit/mockup/projectexplorer/toolchain.h index 7e3f4af097e..04def6656e0 100644 --- a/tests/unit/mockup/projectexplorer/toolchain.h +++ b/tests/unit/mockup/projectexplorer/toolchain.h @@ -42,7 +42,8 @@ public: Abi targetAbi() const { return Abi(); } - using BuiltInHeaderPathsRunner = std::function; + using BuiltInHeaderPathsRunner = std::function; virtual BuiltInHeaderPathsRunner createBuiltInHeaderPathsRunner() const { return BuiltInHeaderPathsRunner(); } class MacroInspectionReport diff --git a/tests/unit/unittest/compilationdatabaseutils-test.cpp b/tests/unit/unittest/compilationdatabaseutils-test.cpp index 9e46ef48f7f..d8edbb721df 100644 --- a/tests/unit/unittest/compilationdatabaseutils-test.cpp +++ b/tests/unit/unittest/compilationdatabaseutils-test.cpp @@ -51,11 +51,12 @@ protected: QStringList flags; QString fileName; QString workingDir; + QString sysRoot; }; TEST_F(CompilationDatabaseUtils, FilterEmptyFlags) { - filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind); + filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind, sysRoot); ASSERT_THAT(flags.isEmpty(), true); } @@ -95,10 +96,11 @@ TEST_F(CompilationDatabaseUtils, FilterArguments) QString::fromUtf8(HostOsInfo::isWindowsHost() ? winPath2 : otherPath2), "-x", "c++", + "--sysroot=C:\\sysroot\\embedded", "C:\\qt-creator\\src\\plugins\\cpptools\\compileroptionsbuilder.cpp"}, "compileroptionsbuilder"); - filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind); + filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind, sysRoot); ASSERT_THAT(flags, Eq(QStringList{"-m32", @@ -117,6 +119,7 @@ TEST_F(CompilationDatabaseUtils, FilterArguments) {"RELATIVE_PLUGIN_PATH", "\"../lib/qtcreator/plugins\""}, {"QT_CREATOR", "1"}})); ASSERT_THAT(fileKind, CppTools::ProjectFile::Kind::CXXSource); + ASSERT_THAT(sysRoot, QString("C:\\sysroot\\embedded")); } static QString kCmakeCommand @@ -170,7 +173,7 @@ TEST_F(CompilationDatabaseUtils, FilterCommand) workingDir = "C:/build-qt_llvm-msvc2017_64bit-Debug"; flags = filterFromFileName(splitCommandLine(kCmakeCommand), "SemaCodeComplete"); - filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind); + filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind, sysRoot); ASSERT_THAT(flags, Eq(QStringList{"/Zc:inline", "/Zc:strictStrings", "/Zc:rvalueCast", "/Zi"})); ASSERT_THAT(headerPaths, @@ -186,7 +189,7 @@ TEST_F(CompilationDatabaseUtils, FileKindDifferentFromExtension) fileName = "foo.c"; flags = QStringList{"-xc++"}; - filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind); + filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind, sysRoot); ASSERT_THAT(fileKind, CppTools::ProjectFile::Kind::CXXSource); } @@ -196,7 +199,7 @@ TEST_F(CompilationDatabaseUtils, FileKindDifferentFromExtension2) fileName = "foo.cpp"; flags = QStringList{"-x", "c"}; - filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind); + filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind, sysRoot); ASSERT_THAT(fileKind, CppTools::ProjectFile::Kind::CSource); } @@ -205,7 +208,7 @@ TEST_F(CompilationDatabaseUtils, SkipOutputFiles) { flags = filterFromFileName(QStringList{"-o", "foo.o"}, "foo"); - filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind); + filteredFlags(fileName, workingDir, flags, headerPaths, macros, fileKind, sysRoot); ASSERT_THAT(flags.isEmpty(), true); }