qbs build: Fix manual tests

- Remove dependency on project.withAutotests by adding local
{Qt,Cpp}Application overrides that alias QtcManualTest. This way, the
respective products are a QtcManualTest when inside Qt Creator, while
also working outside the source tree.
- Rename QtcManualtest to QtcManualTest. (The reason QtcAutotest is not
camel-cased is because "autotest" is a single word.)
- Plus some minor clean-ups.

Change-Id: Idd77191f0b433d6d7443c639eebda383ab110082
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
This commit is contained in:
Christian Kandeler
2023-09-19 18:22:48 +02:00
parent 9f7f175124
commit fca94a8366
25 changed files with 42 additions and 73 deletions

View File

@@ -1,7 +1,7 @@
Project { Project {
name: "Qt Creator" name: "Qt Creator"
minimumQbsVersion: "2.0.0" minimumQbsVersion: "2.0.0"
property bool withAutotests: qbs.buildVariant === "debug" // FIXME: Remove property bool withAutotests: qbs.buildVariant === "debug" // TODO: compat, remove
property path ide_source_tree: path property path ide_source_tree: path
property pathList additionalPlugins: [] property pathList additionalPlugins: []
property pathList additionalLibs: [] property pathList additionalLibs: []

View File

@@ -1,6 +1,6 @@
QtApplication { QtApplication {
name: "Manual debugger gui test" name: "Manual debugger gui test"
Depends { name: "qtc" }
Depends { name: "Qt.widgets" } Depends { name: "Qt.widgets" }
files: [ files: [

View File

@@ -2,11 +2,9 @@ import qbs.File
import qbs.FileInfo import qbs.FileInfo
CppApplication { CppApplication {
condition: qtc.withAutotests
name: "Manual Test Simple Application" name: "Manual Test Simple Application"
targetName: "simple_test_app" targetName: "simple_test_app"
Depends { name: "qtc" }
Depends { name: "Qt.core" } Depends { name: "Qt.core" }
Depends { name: "Qt.core-private"; required: false; condition: Qt.core.versionMajor > 4 } Depends { name: "Qt.core-private"; required: false; condition: Qt.core.versionMajor > 4 }
Depends { name: "Qt.core5compat"; condition: Qt.core.versionMajor > 5 } Depends { name: "Qt.core5compat"; condition: Qt.core.versionMajor > 5 }

View File

@@ -1,11 +1,11 @@
import qbs.FileInfo import qbs.FileInfo
DynamicLibrary { DynamicLibrary {
condition: qtc.withAutotests condition: !qtc.present || qtc.withAutotests
name: "Manual Test Simple Plugin" name: "Manual Test Simple Plugin"
targetName: "simple_test_plugin" targetName: "simple_test_plugin"
Depends { name: "qtc" } Depends { name: "qtc"; required: false }
Depends { name: "Qt.core" } Depends { name: "Qt.core" }
files: [ "simple_test_plugin.cpp" ] files: [ "simple_test_plugin.cpp" ]

View File

@@ -1,15 +1,11 @@
import qbs.FileInfo import qbs.FileInfo
Project { QtcManualTest {
QtcManualtest {
name: "DeviceShell manualtest" name: "DeviceShell manualtest"
Depends { name: "Utils" } Depends { name: "Utils" }
Depends { name: "app_version_header" } Depends { name: "app_version_header" }
files: [
"tst_deviceshell.cpp",
]
cpp.defines: { cpp.defines: {
var defines = base; var defines = base;
var absLibExecPath = FileInfo.joinPaths(qbs.installRoot, qbs.installPrefix, var absLibExecPath = FileInfo.joinPaths(qbs.installRoot, qbs.installPrefix,
@@ -18,5 +14,6 @@ Project {
defines.push('TEST_RELATIVE_LIBEXEC_PATH="' + relLibExecPath + '"'); defines.push('TEST_RELATIVE_LIBEXEC_PATH="' + relLibExecPath + '"');
return defines; return defines;
} }
}
files: "tst_deviceshell.cpp"
} }

View File

@@ -1,6 +1,6 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Manual FakeVim test" name: "Manual FakeVim test"
type: ["application"] type: ["application"]
@@ -11,9 +11,7 @@ QtcManualtest {
cpp.defines: base.concat(["FAKEVIM_STANDALONE"]) cpp.defines: base.concat(["FAKEVIM_STANDALONE"])
cpp.includePaths: fakeVimDir cpp.includePaths: fakeVimDir
files: [ files: "main.cpp"
"main.cpp"
]
Group { Group {
name: "FakeVim files" name: "FakeVim files"

View File

@@ -1,7 +1,7 @@
Project { Project {
name: "QtcManualtests" name: "QtcManualTests"
condition: project.withAutotests // FIXME: Why are these not QtcManualTests? qbsSearchPaths: "qbs"
references: [ references: [
"debugger/gui/gui.qbs", "debugger/gui/gui.qbs",

View File

@@ -1,6 +1,6 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Manual test plugin1" name: "Manual test plugin1"
targetName: "plugin1" targetName: "plugin1"
type: [ "dynamiclibrary" ] type: [ "dynamiclibrary" ]

View File

@@ -1,6 +1,6 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Manual test plugin2" name: "Manual test plugin2"
targetName: "plugin2" targetName: "plugin2"
type: [ "dynamiclibrary" ] type: [ "dynamiclibrary" ]

View File

@@ -1,6 +1,6 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Manual test plugin3" name: "Manual test plugin3"
targetName: "plugin3" targetName: "plugin3"
type: [ "dynamiclibrary" ] type: [ "dynamiclibrary" ]

View File

@@ -1,7 +1,7 @@
Project { Project {
name: "Manual plugin test" name: "Manual plugin test"
QtcManualtest { QtcManualTest {
name: "Manual plugin view test" name: "Manual plugin view test"
Depends { name: "ExtensionSystem" } Depends { name: "ExtensionSystem" }

View File

@@ -1,4 +1,4 @@
QtcManualtest { QtcManualTest {
name: "Manual ProParser test" name: "Manual ProParser test"
Depends { name: "Qt.core" } Depends { name: "Qt.core" }
@@ -18,9 +18,7 @@ QtcManualtest {
cpp.dynamicLibraries: "advapi32" cpp.dynamicLibraries: "advapi32"
} }
files: [ files: "main.cpp"
"main.cpp",
]
Group { Group {
name: "ProParser files" name: "ProParser files"

View File

@@ -0,0 +1 @@
QtcManualTest {}

View File

@@ -0,0 +1 @@
QtcManualTest {}

View File

@@ -1,7 +1,5 @@
QtcManualtest { QtcManualTest {
name: "Manual debugger shootout test" name: "Manual debugger shootout test"
files: [ files: "tst_codesize.cpp"
"tst_codesize.cpp",
]
} }

View File

@@ -1,13 +1,11 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Spinner example" name: "Spinner example"
type: ["application"] type: ["application"]
Depends { name: "Qt"; submodules: ["widgets"] } Depends { name: "Qt"; submodules: ["widgets"] }
Depends { name: "Spinner" } Depends { name: "Spinner" }
files: [ files: "main.cpp"
"main.cpp",
]
} }

View File

@@ -1,15 +1,13 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Manual SubDirFileContainer test" name: "Manual SubDirFileContainer test"
type: ["application"] type: ["application"]
Depends { name: "Utils" } Depends { name: "Utils" }
Depends { name: "app_version_header" } Depends { name: "app_version_header" }
files: [ files: "tst_subdirfilecontainer.cpp"
"tst_subdirfilecontainer.cpp",
]
cpp.defines: { cpp.defines: {
var defines = base; var defines = base;

View File

@@ -1,6 +1,6 @@
import qbs.FileInfo import qbs.FileInfo
QtcManualtest { QtcManualTest {
name: "Tasking demo" name: "Tasking demo"
type: ["application"] type: ["application"]

View File

@@ -1,6 +1,4 @@
import qbs.FileInfo QtcManualTest {
QtcManualtest {
name: "Tasking imagescaling" name: "Tasking imagescaling"
type: ["application"] type: ["application"]

View File

@@ -3,13 +3,10 @@ import "../common/common.qbs" as Common
CppApplication { CppApplication {
name: "Manual Test Utils CrumblePath" name: "Manual Test Utils CrumblePath"
Depends { name: "qtc" }
Depends { name: "Core" } Depends { name: "Core" }
Depends { name: "Utils" } Depends { name: "Utils" }
files: [ files: "tst_manual_widgets_crumblepath.cpp"
"tst_manual_widgets_crumblepath.cpp",
]
Common {} Common {}
} }

View File

@@ -3,13 +3,10 @@ import "../common/common.qbs" as Common
CppApplication { CppApplication {
name: "Manual Test Utils InfoLabel" name: "Manual Test Utils InfoLabel"
Depends { name: "qtc" }
Depends { name: "Core" } Depends { name: "Core" }
Depends { name: "Utils" } Depends { name: "Utils" }
files: [ files: "tst_manual_widgets_infolabel.cpp"
"tst_manual_widgets_infolabel.cpp",
]
Common {} Common {}
} }

View File

@@ -1,12 +1,8 @@
CppApplication { CppApplication {
name: "Manual Test Utils LayoutBuilder" name: "Manual Test Utils LayoutBuilder"
Depends { name: "qtc" }
Depends { name: "Core" } Depends { name: "Core" }
Depends { name: "Utils" } Depends { name: "Utils" }
files: [ files: "tst_manual_widgets_layoutbuilder.cpp"
"tst_manual_widgets_layoutbuilder.cpp",
]
} }

View File

@@ -3,13 +3,10 @@ import "../common/common.qbs" as Common
CppApplication { CppApplication {
name: "Manual Test Utils ManhattanStyle" name: "Manual Test Utils ManhattanStyle"
Depends { name: "qtc" }
Depends { name: "Core" } Depends { name: "Core" }
Depends { name: "Utils" } Depends { name: "Utils" }
files: [ files: "tst_manual_widgets_manhattanstyle.cpp"
"tst_manual_widgets_manhattanstyle.cpp",
]
Common {} Common {}
} }

View File

@@ -3,15 +3,12 @@ import "../common/common.qbs" as Common
CppApplication { CppApplication {
name: "Manual Test Tracing" name: "Manual Test Tracing"
Depends { name: "qtc" }
Depends { name: "Qt.quick" } Depends { name: "Qt.quick" }
Depends { name: "Tracing" } Depends { name: "Tracing" }
Depends { name: "Utils" } Depends { name: "Utils" }
Depends { name: "Core" } Depends { name: "Core" }
files: [ files: "tst_manual_widgets_tracing.cpp"
"tst_manual_widgets_tracing.cpp",
]
Common {} Common {}
} }