aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/blackbox/testdata-qt
Commit message (Collapse)AuthorAgeFilesLines
* Fix TestBlackboxQt::staticQtPluginLinking()Christian Kandeler2019-05-082-2/+14
| | | | | | | As of 3f80c821e9, we no longer link plugins into static libraries. Change-Id: I35816d0d84b8758fb9792387bf450d53d7ea6e5a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Return initializer list where it is possibleDenis Shienkov2019-02-261-1/+1
| | | | | | | | | This fixes this clang-tidy warning: warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list] Change-Id: I421e1e47462fe0e97788672684d47943af7df850 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use QStringLiteral more where it is possibleDenis Shienkov2019-02-251-3/+3
| | | | | | Change-Id: I7419cc3fbc1e8776de3943852dcedab4c95d1c32 Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Replace 'typedef' with 'using' where it is possibleDenis Shienkov2019-02-231-2/+2
| | | | | | | | One exception is that the 'typedef' for function pointers were skipped due to an additional work is required. Change-Id: I2112fded3abeaee1d1f49f56adfd2914d5db0324 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Use 'const auto' keywords more at objects allocationsDenis Shienkov2019-02-233-3/+3
| | | | | | Change-Id: I592d433e7c473ae9f27ca08e701516efe53650ba Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Qt: Allow users to explicitly tag files as mocableChristian Kandeler2019-01-294-0/+49
| | | | | | | | | This is helpful for declaring a QObject-derived class via a macro, in which case the moc scanner will not help. Fixes: QBS-1410 Change-Id: I19ee30eac670228686b5528888159220cf39abd3 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Qt support: Use gold linker if Qt is configured that wayChristian Kandeler2019-01-142-0/+16
| | | | | | | Fixes: QBS-1421 Change-Id: I1f6d749eba38c9a4caa60341f19ee5e89e89d28a Reviewed-by: hjk <hjk@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix TestBlackboxQt::staticQtPluginLinking()Christian Kandeler2018-11-131-0/+1
| | | | | | | | Pulling in a platform plugin has no effect anymore if Qt.gui is not also loaded. Change-Id: I6e3e73c903192906722884dd7f566b228d938a8e Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Fix pluginSupport autotestChristian Kandeler2018-11-123-3/+16
| | | | | | | | | Our test machine does not have the image plugins we hardcoded, so be more flexible. This also tightens the test a bit. Change-Id: I0cc49b3066909ac3e4ec387515e689a00042f4d5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Qt support: Allow users to pull in plugins by typeChristian Kandeler2018-11-094-0/+25
| | | | | | | | | | ... and properly set the default values. Fixes: QBS-1409 Change-Id: Ib8f3573fcb48d395d9212ac4b01e5caf910c575f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Qt.core: Make moc rule catch changes to moc_*.cpp inclusionsChristian Kandeler2018-08-014-0/+30
| | | | | | | | | | | | | The problem was that the moc_xxx.cpp artifact gets created from the xxx.h input, but its file tags depend on whether it gets included by some cpp file or not. Because changes to such cpp files do not affect the xxx.h file in any way, the rule was not re-applied in the case such includes got added or removed. We fix this by making cpp files an auxiliary input to the moc rule, so it gets re-applied on changes to those files. Change-Id: I29b04fac3870f5a370cb7d894bc6ea56a63f6b0e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Autotests: Shorten some product namesChristian Kandeler2018-07-271-0/+1
| | | | | | | | We've observed test failures on Windows due to path names getting too long. Change-Id: Ia5b5e377999112f5ff9cf0a0ce01709ce7863e99 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* RuleNode: Fix calculation of changed inputsChristian Kandeler2018-07-164-0/+132
| | | | | | | | | | | | | | | | | | | | | | | | The old code had a number of problems: - It partially overlapped with the calculation of compatible inputs. - It was wrong in that it failed to consider inputs from dependencies. - It was wrong in that it assumed that after rule application, input artifacts always have parent artifacts to later compare timestamps with. This is not the case for e.g. a generated cpp file without a Q_OBJECT macro on which moc is run: No transformer is created in such a case, because the outputArtifacts array is empty. The last problem was glossed over by the fact that we held a global list of "changed source artifacts" in the executor, so such changes were spotted when they happened in source artifacts. However, that code was also rather dubious in itself because the criterion for "changed" was that the timestamp was newer than it was on the last run of the executor, so I don't think it was completely safe when doing partial builds. We solve these problems by remembering when we last applied the rule. An input artifact is considered "changed" if it has been modified after that. Change-Id: Ib1bafd9e1078122776626155c4f2cc11ad622191 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge 1.12 into masterChristian Kandeler2018-07-122-1/+2
|\ | | | | | | Change-Id: I056a96c062881c2a07ec15b1803efa9c9aa1a02a
| * Update the timestamps of file dependencies of rescued artifactsChristian Kandeler2018-07-102-1/+2
| | | | | | | | | | | | | | | | | | | | | | Resetting the timestamps of file dependencies happens per artifact before the rescue procedure, so any dependencies added there must get their timestamp reset explicitly. Task-number: QBS-1359 Change-Id: Iec22b105a4132ada65b52391d4212c3b9ba52a2a Reviewed-by: Ola Røer Thorsen <ola@silentwings.no> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Remove the base module import from most test data projectsJoerg Bornemann2018-06-2223-43/+0
| | | | | | | | | | | | | | | | Keep the base import in blackbox/testdata/deprecated-property to ensure we don't accidentally break it. Change-Id: I790da21a7490ec9c1b0335f45e8707e7e04daa7c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.12 into masterChristian Kandeler2018-06-153-1/+13
|\| | | | | | | Change-Id: I72bbda4537a65bc525afc38a3d280f3c23940c12
| * Prevent adding empty file paths as dependenciesChristian Kandeler2018-06-083-1/+13
| | | | | | | | | | | | | | | | | | The input artifact scanner was missing a check, so empty paths could end up in the list of file dependencies. As a result, the respective artifact would get rebuilt every time. Change-Id: I34e48776856224dc885f03d34d40cae88d7d5e4b Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge 1.12 into masterChristian Kandeler2018-06-081-0/+10
|\| | | | | | | Change-Id: I0c914674c0728a7f7bc70fd9608914b95ef55a30
| * Fix the qmlcachegen functionalityChristian Kandeler2018-06-051-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | The qmlcache module was broken in an impressive number of ways: - We forgot to adapt the Probe to a5cc49f2c6. - The return value of the validate property is never evaluated; you have to throw an error for it to have an effect. - From 5.11 on, qmlcachegen does not support the --target-architecture option anymore. Task-number: QBS-1353 Change-Id: I770ddc18ad2519c1d5db83bee9634717b1768d67 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Simplify installation of applications and librariesChristian Kandeler2018-06-011-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add "install" and "installDir" convenience properties to our Application, DynamicLibrary and StaticLibrary items, so users are no longer required to write groups with file tag filters for the normal installation case. The installDir property has a suitable default value for the respective target platform, as does qbs.installPrefix. [ChangeLog] The Application, DynamicLibrary and StaticLibrary items now have properties for more convenient installation of target binaries. Task-number: QBS-229 Change-Id: I9cfa4c02a7c555b0af637257da63967cd62cc119 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Allow rules without output artifactsChristian Kandeler2018-05-281-4/+1
|/ | | | | | | | | | | | It is occasionally useful to have a rule whose purpose lies solely in its "side effects", that is, it does not produce any actual files. This patch removes the necessity to declare a dummy artifact in that case. [ChangeLog] Added support for rules without output artifacts Change-Id: I38e76a5ddc78ffa768e8ae1f270ae2f7461c5ee7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Qt templates: Make moc rule handle C++ amalgamation correctlyChristian Kandeler2018-04-244-0/+32
| | | | | | | | | In C++ amalgamation mode, the source files need to be moc'ed before merging, because otherwise including .moc files will not work. Task-number: QBS-1252 Change-Id: I6e4bef4b46ec7bc3cf7ce7a950b380d469cc0afd Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge 1.11 into masterChristian Kandeler2018-03-091-0/+1
|\ | | | | | | Change-Id: Ie416a83940654e21b8872a8c7dc9f56b677ebabd
| * Fix qtquickcompiler support for Qt >= 5.11Joerg Bornemann2018-03-061-0/+1
| | | | | | | | | | | | | | The functionality of qtquickcompiler is now in qmlcachegen. Change-Id: I70c45f9db72895e2146cbf4bb7902b8db294626c Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Merge 1.11 into masterChristian Kandeler2018-02-121-0/+1
|\| | | | | | | Change-Id: I29c7a8b8b4a566ccb6f06a258ea1f98f96e118b9
| * Qt.scxml: Add support for the --statemethods optionChristian Kandeler2018-02-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Also add an undocumented property to add arbitrary options. This one acts as an emergency fallback in case we miss a new option in the future. Task-number: QBS-1295 Change-Id: I0ba81325d6975d8bb25cbd397c9daaaa12f685c2 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Andreas Bacher <andreas.bacher@meon-medical.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix dbusAdaptors autotestChristian Kandeler2018-01-231-0/+1
| | | | | | | | | | | | | | Was broken by 901bf1f774. Change-Id: Ic1d76e09e00a04b24962c675ff4284b77e752554 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Use 'auto' keywords more for the allocated variablesDenis Shienkov2018-01-233-3/+3
|/ | | | | Change-Id: I25ec97e64522d7fa486fcf408d8134cbbd8b24ea Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Simplify some autotestsChristian Kandeler2018-01-083-18/+2
| | | | | | | ... by using "qbs run" instead of manually executing the applications. Change-Id: I548f7721acff3aac6644944ad7436ad8bcfa1867 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Merge 1.10 into masterChristian Kandeler2017-12-154-0/+51
|\ | | | | | | Change-Id: Iab942ed25d06038cf8c172eb70dcd8e9a720e1c8
| * Fix qtquickcompiler support for QML files in subdirectoriesChristian Kandeler2017-12-154-0/+51
| | | | | | | | | | | | | | | | | | The input to the look-up function is a relative file path, not necessarily just a file name as the code assumed. Task-number: QBS-1261 Change-Id: Iaad4629ea92f327edc3dca7f012d82a00669994f Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Fix pluginMetaData autotest on WindowsChristian Kandeler2017-12-121-1/+5
| | | | | | | | | | | | | | Was broken by 06250a36a4. Change-Id: I8a8c96ac226b422652930a8ca3ab8dd712af3bed Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Introduce cpp.rpathOriginJake Petroules2017-12-081-1/+1
| | | | | | | | | | | | | | | | [ChangeLog] Added property cpp.rpathOrigin which evaluates to @loader_path on Darwin and $ORIGIN on other Unix-like platforms. Change-Id: If5770a83ae32f29ee520fd00b07ed8f0caf6bd48 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix some autotests for older compilersChristian Kandeler2017-11-212-0/+2
| | | | | | | | | | | | | | | | Fallout of 7494bf59c2. Change-Id: Ia72f2b211252a74d9b53092ed82633fd4d5ad964 Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Use nullptr to initialize the pointersDenis Shienkov2017-11-203-3/+3
| | | | | | | | | | | | Change-Id: I59d743f585410cb5c00d36a7b6f9a3e9d696d19e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | STL compatibility: use size() instead of count()Jake Petroules2017-11-151-1/+1
| | | | | | | | | | | | | | This is a simple find and replace with manual sanity check. Change-Id: Ia733befe7885dc3c643d5c84e151312bfd86a3c6 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* | Fix mocSameFileName autotestChristian Kandeler2017-11-021-0/+1
| | | | | | | | | | | | | | The sources require C++11. Change-Id: I36faac119e504e3106818235022b51336a443559 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Qt: Support mocable files with the same name in the same productChristian Kandeler2017-11-028-0/+108
| | | | | | | | | | Change-Id: I6ba4a31acfd63724ef92b1fe1c0bf5ded353bbe8 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Make it possible to mark non-generated C++ header files as "unmocable"Joerg Bornemann2017-10-243-0/+19
|/ | | | | | | | | | Let the moc rule check its inputs for the "unmocable" file tag and ignore such artifacts. The already existing excludeAuxiliaryInputs assignment only prevents connections to rules that produce unmocable artifacts. Change-Id: I2f51c3d86e9127a62c592e28182c16f456340ab8 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Move all remaining manual tests into autotestsJake Petroules2017-08-232-0/+64
| | | | | | | | | Most of these are easily automatable, and are more useful being run automatically in every integration rather than manually, and probably never. Adapt tests as necessary. Change-Id: Ie158481ad8c45ad8d808feacd98c71972dc18900 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge 1.9 into masterChristian Kandeler2017-08-141-1/+4
|\ | | | | | | Change-Id: I6da76b0a53bf87105c4e7b48724d9760cb68e831
| * Do not access the bundle module unconditionallyChristian Kandeler2017-08-021-1/+4
| | | | | | | | | | | | | | | | | | | | It is a mistake that the NativeBinary item currently pulls in the bundle module unconditionally (and also that the module is enabled everywhere). We want to change that. Prepare for the change by removing all unconditional accesses to the module's properties. Change-Id: If57b8222c1a0e2b09c33520882446fa71401f1f1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix edge case in change trackingChristian Kandeler2017-08-143-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If we have a moc'able header file whose moc output is included by the cpp file, then it is an error not to list that header in the project file, because moc will not run on it and the included moc_cpp file won't be present, causing a compiler error. However, if the header was originally listed in the project file and removed from it after building, then the next attempt to build would still succeed, because the generated artifact would only be removed from disk at the end of the build process. Fix this by amending the code that checks for removed child artifacts to remove them from disk immediately, making sure a rebuild will not accidentally succeed. Change-Id: I4f69560cc899dbc61938acc1c697aa93407dc03c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge 1.9 into masterChristian Kandeler2017-07-281-2/+2
|\| | | | | | | Change-Id: Ie07c560125a52e0f0fb9e2db79c2bac89cd0c58f
| * Fix glitch with new module property access syntaxChristian Kandeler2017-07-271-2/+2
| | | | | | | | | | | | | | | | | | | | There was a problem with multi-component module names: It was not possible to use constructs like 'input["Qt.core"].x', which made it practically impossible to pass module names in variables and use these to access properties. Change-Id: Ic200ba2dcfd4abba51a5ed84cf67a3e090c11d7c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Fix qmlcache autotestChristian Kandeler2017-07-191-1/+1
| | | | | | | | | | | | | | Interference from the "product type" patch again. Change-Id: I15ae8e156d4a84e9ea8242a6aa4577b8a5729b0c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Add support for qmlcachegenJoerg Bornemann2017-07-176-0/+98
|/ | | | | | | | | | [ChangeLog] Support for qmlcachegen has been added. To enable it in a QML project, set Qt.qml.generateCacheFiles to true. Task-number: QBS-1132 Change-Id: I061eb1afd8994306958376e1cd7f5a98a8f4b03e Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
* Merge 1.8 into masterChristian Kandeler2017-06-092-1/+5
| | | | Change-Id: I2fcb2113a24c8807467aa03aa3e7590d53761706
* Migrate blackbox tests depending on Qt into a new tst_blackboxqt targetJake Petroules2017-05-3053-0/+1529
This new test suite collects all the tests which actually rely on Qt and test qbs' support for Qt in some way. Change-Id: Id13d0bee6639314c26bfd87d2abee8fd31dcf770 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>