aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/api/tst_api.h
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2014-08-11 15:59:09 +0200
committerChristian Kandeler <christian.kandeler@digia.com>2014-08-14 11:16:34 +0200
commit09d9ce2c265450d786052100bedb059870dddc23 (patch)
tree3e811fa1a328a8d19ddbffec5a94d2c61add84fc /tests/auto/api/tst_api.h
parent4e7f1023b0fc1349047357cf8926fa68761cc546 (diff)
Turn some blackbox tests into API tests.
Different test executables can run in parallel, whereas the functions within one test executable cannot. This means that tst_blackbox is currently a bottleneck, as it takes an order of magnitude longer than all other tests combined. We therefore turn a number of blackbox tests into API tests (most tests work equally well in either). The run-time of these two test executables is now about the same, and as a result, the time it takes to run "make check" has almost halved. Change-Id: I55ef43a60588f86a8438bdecb7795aca0880efd0 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'tests/auto/api/tst_api.h')
-rw-r--r--tests/auto/api/tst_api.h54
1 files changed, 53 insertions, 1 deletions
diff --git a/tests/auto/api/tst_api.h b/tests/auto/api/tst_api.h
index 3160c6bf4..098bbf0ed 100644
--- a/tests/auto/api/tst_api.h
+++ b/tests/auto/api/tst_api.h
@@ -30,9 +30,14 @@
#ifndef QBS_TST_API_H
#define QBS_TST_API_H
+#include <tools/buildoptions.h>
+
#include <QObject>
-namespace qbs { class SetupProjectParameters; }
+namespace qbs {
+class ErrorInfo;
+class SetupProjectParameters;
+}
class LogSink;
@@ -47,29 +52,76 @@ public:
private slots:
void initTestCase();
+ void addQObjectMacroToCppFile();
+ void addedFilePersistent();
+ void baseProperties();
void buildGraphLocking();
+ void buildProject();
+ void buildProject_data();
+ void buildProjectDryRun();
+ void buildProjectDryRun_data();
void buildSingleFile();
#ifdef QBS_ENABLE_PROJECT_FILE_UPDATES
void changeContent();
#endif
+ void changeDependentLib();
void disabledInstallGroup();
+ void disabledProduct();
+ void disabledProject();
+ void disableProduct();
+ void duplicateProductNames();
+ void duplicateProductNames_data();
+ void dynamicLibs();
+ void emptyFileTagList();
+ void emptySubmodulesList();
+ void explicitlyDependsOn();
+ void exportSimple();
+ void exportWithRecursiveDepends();
+ void fileTagger();
void fileTagsFilterOverride();
void infiniteLoopBuilding();
void infiniteLoopBuilding_data();
void infiniteLoopResolving();
+ void inheritQbsSearchPaths();
void installableFiles();
void isRunnable();
void listBuildSystemFiles();
+ void mocCppIncluded();
void multiArch();
+ void newOutputArtifactInDependency();
+ void newPatternMatch();
void nonexistingProjectPropertyFromProduct();
void nonexistingProjectPropertyFromCommandLine();
+ void objC();
void projectInvalidation();
void projectLocking();
+ void projectWithPropertiesItem();
+ void propertiesBlocks();
+ void rc();
void references();
+ void renameProduct();
+ void renameTargetArtifact();
+ void removeFileDependency();
+ void resolveProject();
+ void resolveProject_data();
+ void resolveProjectDryRun();
+ void resolveProjectDryRun_data();
+ void softDependency();
void sourceFileInBuildDir();
+ void subProjects();
+ void trackAddQObjectHeader();
+ void trackRemoveQObjectHeader();
+ void transformers();
+ void typeChange();
+ void uic();
private:
qbs::SetupProjectParameters defaultSetupParameters(const QString &projectFilePath) const;
+ qbs::ErrorInfo doBuildProject(const QString &projectFilePath,
+ QObject *buildDescriptionReceiver = 0,
+ QObject *procResultReceiver = 0,
+ QObject *taskReceiver = 0,
+ const qbs::BuildOptions &options = qbs::BuildOptions());
LogSink * const m_logSink;
const QString m_sourceDataDir;