summaryrefslogtreecommitdiff
path: root/tests/benchmarks/qml
Commit message (Collapse)AuthorAgeFilesLines
* Retire the qt_parse_all_argumentsAmir Masoud Abdol2023-01-2011-11/+11
| | | | | | Task-number: QTBUG-99238 Change-Id: Ia11c9cbd7c06347319ab3674ec0cd8da0214747e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* tst_qqmlchangeset: fix target name typo and de-duplicate testsMitch Curtis2022-11-011-2/+2
| | | | | | | | | There was a typo in the auto test's target name, but fixing it also requires renaming the benchmark which has the same name. Pick-to: 6.2 6.4 Change-Id: I8e7b6de472ed84df0917584592f28d7015618331 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Port from container::count() and length() to size() - V5Marc Mutz2022-10-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8, but extended to handle typedefs and accesses through pointers, too: const std::string o = "object"; auto hasTypeIgnoringPointer = [](auto type) { return anyOf(hasType(type), hasType(pointsTo(type))); }; auto derivedFromAnyOfClasses = [&](ArrayRef<StringRef> classes) { auto exprOfDeclaredType = [&](auto decl) { return expr(hasTypeIgnoringPointer(hasUnqualifiedDesugaredType(recordType(hasDeclaration(decl))))).bind(o); }; return exprOfDeclaredType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes)))); }; auto renameMethod = [&] (ArrayRef<StringRef> classes, StringRef from, StringRef to) { return makeRule(cxxMemberCallExpr(on(derivedFromAnyOfClasses(classes)), callee(cxxMethodDecl(hasName(from), parameterCountIs(0)))), changeTo(cat(access(o, cat(to)), "()")), cat("use '", to, "' instead of '", from, "'")); }; renameMethod(<classes>, "count", "size"); renameMethod(<classes>, "length", "size"); except that on() was replaced with a matcher that doesn't ignoreParens(). a.k.a qt-port-to-std-compatible-api V5 with config Scope: 'Container'. Change-Id: I58e1b41b91c34d2e860dbb5847b3752edbfc6fc9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Port from container::count() and length() to size()Marc Mutz2022-10-071-4/+4
| | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8: auto QtContainerClass = anyOf( expr(hasType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))))).bind(o), expr(hasType(namedDecl(hasAnyName(<classes>)))).bind(o)); makeRule(cxxMemberCallExpr(on(QtContainerClass), callee(cxxMethodDecl(hasAnyName({"count", "length"), parameterCountIs(0))))), changeTo(cat(access(o, cat("size"), "()"))), cat("use 'size()' instead of 'count()/length()'")) a.k.a qt-port-to-std-compatible-api with config Scope: 'Container', with the extended set of container classes recognized. Change-Id: Idb1f75dfe2323bd1d9e8b4d58d54f1b4b80c7ed7 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-09-0720-20/+20
| | | | | | | Task-number: QTBUG-105718 Change-Id: Id89ed14990804a5024183e75382cc539d4293da1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Tests: do not use QT_DISABLE_DEPRECATED_BEFOREIvan Solovev2022-08-263-5/+0
| | | | | | | | | | For several reasons: * It was renamed to QT_DISABLE_DEPRECATED_UP_TO * Its value will be propagated from the general Qt build Task-number: QTBUG-104858 Change-Id: I90c92dc05b884f6408467c573181c00f8e00e6b3 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Don't use PUBLIC_LIBRARIES for tests and test helpersAlexandru Croitor2022-07-2818-18/+18
| | | | | Change-Id: I1cd769f85d5f82c43639d6787d98e536619249e6 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Add license headers to cmake filesLucie Gérard2022-07-0820-0/+60
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: I72c89a98c42bbc9234d8495e9e503bec81d11037 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-11189-5169/+378
| | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Replace uses of deprecated _qs with _s/QStringLiteralSona Kurazyan2022-04-291-1/+3
| | | | | | Task-number: QTBUG-101408 Change-Id: Ic925751b73f52d8fa5add5cacc52d6dd6ea2dc27 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix warnings in tests after QQmlListReference changeVolker Hilsheimer2022-03-211-1/+1
| | | | | | | | The engine parameter is no longer used. Pick-to: 6.3 Change-Id: Ifc630eb4803a015d41df50210bd86947f6a5a472 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Add a benchmark of Date.getTimeZoneOffset()Edward Welbourne2021-11-231-0/+16
| | | | | | | | | Test at many moments from spring 1967 (before the epoch) to summer 2046 (after 32-bit time_t's sign-wrap). Change-Id: I3932cc1553a868b8815fda9a8dfc7644e4485704 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Clean up tst_javascriptEdward Welbourne2021-11-231-40/+15
| | | | | | | | | | | | | | | | Inline the trivial constructor. Get rid of the pointless destructor. Use QDirIterator instead of QDir, to save collecting a bunch of strings, only to iterate them, when we could simply iterate them. Use QDirIterator::filePath() instead of adding fragments ourselves. Use u"*.qml"_qs instead of constructing QString from ASCII. Use QString::chopped(4) rather than left(size() - 4). Use QScopedPointer to ensure tidy-up of allocated object. Don't use 0 as a null pointer value. Waste less vertical space. Change-Id: I44f62f4e41f63de860f47114b2f47dddbf9746bc Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Replace 0 pointer constants with nullptrAllan Sandfeld Jensen2021-10-186-12/+12
| | | | | | | Replaced in most common patterns. Change-Id: Idcaff1f2e915f29922702d3600a2e5f1e2418a7a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix compiler warnings in test codeCraig Scott2021-07-071-1/+1
| | | | | | Change-Id: I201dcc375a5601c5655567b4c3dce3361c852b79 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* CMake: Remove unneeded *.pro and .prev_CMakeLists.txt filesCraig Scott2021-05-192-51/+0
| | | | | | | | | | The .pro files corresponding to the .prev_CMakeLists.txt files have already been removed. Change-Id: I254eafe4c7de1a516e33bd9cb3d9879e73fa83b4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Add additional binding benchmarksMaximilian Goldstein2021-02-248-0/+1360
| | | | | Change-Id: I82b2a099553e28ac004f0425d1544fbcb10c28c6 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Import property benchmarks from private repoMaximilian Goldstein2021-02-048-0/+361
| | | | | Change-Id: If45bf9bfcfee127263a2c0e49cfa55e12f9a6d0f Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Remove the qmake project filesFabian Kosmale2021-01-1519-199/+0
| | | | | | | | | Remove all qmake project files, except for examples which are used to test that qmake continues to work. Change-Id: Ic4abb72dc2dcd75df7a797c56056b6b3c5fe62ac Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* CMake: Regenerate projects to use new qt_internal_ APIAlexandru Croitor2020-10-0619-20/+20
| | | | | | | | Modify special case locations to use the new API as well. Task-number: QTBUG-86815 Change-Id: I3b964e3baf0cc7040830156dac30358ea1152801 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Remove deprecated QQmlListProperty constructorFabian Kosmale2020-08-313-3/+3
| | | | | | | | | | [ChangeLog][QML][QQmlListProperty] Removed deprecated QQmlListProperty constructor taking a reference. Use the overload taking a pointer instead. Change-Id: I8942026d1bb1c88065659d96d648a4b256d7d427 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Add ; to Q_UNUSED and UNUSED_PARAMLars Schmertmann2020-06-261-5/+5
| | | | | | | | | This is required to remove the ; from the macro with Qt 6. Task-number: QTBUG-82978 Change-Id: Iead53d18fd790fb2d870d80ef2db79666f0d2392 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Port the remaining tests from QRegExp to QRegularExpressionLars Knoll2020-04-033-7/+9
| | | | | Change-Id: If258701759c5da206948407feccd94e323af6b36 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* CMake: Fix painting benchmark dependency on OpenGLWidgetsAlexandru Croitor2020-03-164-3/+9
| | | | | | Change-Id: Ic7ed89c51e9a3cabda60ec99702b3aacd2cf5e97 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Fix duplicate target name for qquickwindow benchmarkAlexandru Croitor2020-03-162-1/+29
| | | | | | Change-Id: I517d52e1ac35ae5d27d3e9ed676ebebdfe980db5 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Regenerate and adapt to merge from devwip/cmakeAlexandru Croitor2020-03-121-0/+1
| | | | | | Change-Id: If8daa6152a563d4309d7342414780ef75b9f5589 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Leander Beernaert <leander.beernaert@qt.io>
* Merge remote-tracking branch 'origin/dev' into wip/cmakeAlexandru Croitor2020-03-122-2/+2
|\ | | | | | | | | | | | | | | Conflicts: dependencies.yaml src/qml/qml/qqmlengine.cpp Change-Id: I6a73fd1064286f4a2232de85c2ce7f80452d4641
| * painting benchmark: adapt to openglwidgets splitFabian Kosmale2020-03-091-1/+1
| | | | | | | | | | Change-Id: I603635dfaaa455a5a66d7a791a36008f9fb9b770 Reviewed-by: Johan Helsing <johanhelsing@gmail.com>
| * Use QTypeRevision for all versions and revisionsUlf Hermann2020-02-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In many places we carry major and minor versions or revisions that are loosely coupled to minor versions. As the Qt minor version resets now, we need to handle these things more systematically. In particular, we need to add a "major" part to revisions. QTypeRevision can express the current major/minor pairs more efficiently and can also be used to add a major version to revisions. This change does not change the semantics, yet, but only replaces the types. Change-Id: Ie58ba8114d7e4c6427f0f28716deee71995c0d24 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | Regenerate qtdeclarativeAlexandru Croitor2020-02-126-27/+12
| | | | | | | | | | | | | | Change-Id: I48d7fd306f3d1b161a8e73029282ee591b1ef612 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
* | Post-merge fixesAlexandru Croitor2020-01-301-1/+2
| | | | | | | | | | Change-Id: I2350df5368ee34d6c7072d456806e518ce533839 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/dev' into wip/cmakeAlexandru Croitor2020-01-292-2/+2
|\ \ | |/ | | | | | | | | | | Conflicts: dependencies.yaml Change-Id: Ie3e9dc62031a85e5e81cbdf04694b95159d49fca
| * Merge "Merge remote-tracking branch 'origin/5.15' into dev"Qt Forward Merge Bot2020-01-201-1/+0
| |\
| | * Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-201-1/+0
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/qml/qqmlvaluetype.cpp tests/auto/qml/qml.pro Change-Id: I78f992f83212bb9fd5e09b64163f15f046185224
| | | * Don't use deprecated QMatrix class anymoreJarek Kobus2020-01-171-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-46653 Change-Id: I3570c84014788b7b66d9cb54b77f9964ae15af6d Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * | | Explicitly link paintbenchmark against widgetsUlf Hermann2020-01-201-1/+2
| |/ / | | | | | | | | | | | | Change-Id: Ife5ef02c77e2770bc67c28952830fbafba5f5cd1 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Merge remote-tracking branch 'origin/dev' into wip/cmakeLeander Beernaert2020-01-161-8/+12
|\ \ \ | |/ / | | | | | | Change-Id: I0c5b939c70bdb91ccdf7068784308416dcaa5736
| * | Port paintbenchmark to QOpenGLWidgetUlf Hermann2020-01-091-8/+12
| |/ | | | | | | | | | | | | QGLWidget is gone. Change-Id: Ief5d1edeff96afa739b58acbb3d83779f78d7838 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | Regenerate all projects with new CMake API versionAlexandru Croitor2019-11-1518-19/+19
| | | | | | | | | | | | Change-Id: Ie0db35f674137c229eaf049616f38f8e818f7092 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Regenerate remaining tests to be in syncAlexandru Croitor2019-11-1518-98/+46
| | | | | | | | | | | | Change-Id: I200c8f58ad13bc1bc78409a3ce49348584ba5b51 Reviewed-by: Qt CMake Build Bot Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Merge remote-tracking branch 'origin/wip/qt6' into wip/cmakeAlexandru Croitor2019-10-112-7/+7
|\ \ | |/ | | | | Change-Id: I4a91928610f79c8e21a05781953ffa41508c828a
| * Remove the last usages of deprecated APIsSona Kurazyan2019-08-202-7/+7
| | | | | | | | | | | | | | | | | | | | | | - Replaced the usages of deprecated APIs by corresponding alternatives. - Fixed building the tests with disabled deprecated APIs. Task-number: QTBUG-76491 Change-Id: Ie8c5deb22c2074d39a64346c20e5384a7b2ad99b Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | Support standalone tests buildingLiang Qi2019-09-021-1/+1
| | | | | | | | | | | | | | Also fix some build issues regarding tests. Change-Id: Ie9ba8a0b7932ae2b542614b6c824c4071ad0b548 Reviewed-by: Liang Qi <liang.qi@qt.io>
* | Add QtDeclarative Test CoverageLeander Beernaert2019-08-1419-0/+512
|/ | | | | | | | | | | | | | | | | | | | | | All tests compile and run on a developer build. These tests are failing: tst_qqmlsqldatabase Fails due to missing sql driver tst_qqmlsqldatabase Fails in wip/qt6 tst_ququicklayouts Fails in wip/qt6 tst_flickableinterop Fails in wip/qt6 tst_qquickpinchandler Fails in wip/qt6 tst_qquickflickable Fails in wip/qt6 tst_qquickgridview Fails in wip/qt6 tst_qquickimage Fails due to missing jpeg plugin tst_qquicklistview Fails in wip/qt6 tst_qquicktext Fails in wip/qt6 tst_qquickcanvasitem Fails in wip/qt6 tst_scenegraph Fails due to missing jpeg plugin tst_TestFiltering Fails in wip/qt6 Change-Id: I4b9d69c118e23c095cb72ad5a67653fc30943bb1 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove usages of deprecated qSortSona Kurazyan2019-06-201-4/+4
| | | | | | | Task-number: QTBUG-76491 Change-Id: If8dbbc129a07bedc5970b82c6698cfcfad755b49 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix tst_librarymetrics_performance benchmarkChris Adams2019-02-271-16/+188
| | | | | | | | | | | | | | | | | | | Revert "tst_librarymetrics_performance: Use QBENCHMARK macro instead of rolling our own" This reverts commit 7377e8f950d550d8823914588c35e541c48ab3ce. By using QBENCHMARK in the way 7377e8f950d550d did, engine construction and other unwanted side effects were included in each benchmark run. This commit also adds more comments to document the reasons behind using a custom benchmark harness rather than QBENCHMARK, and also to document more precisely the purpose of each individual benchmark to ensure that future maintainers don't accidentally introduce side-effects into the benchmarked code sections which could contaminate the benchmark results. Task-number: QTBUG-43096 Change-Id: Ib917bfd5a5ac59690d2e237080f995cb646d724a Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-01-242-11/+13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/qml/compiler/qv4codegen.cpp src/qml/compiler/qv4compileddata_p.h src/qml/debugger/qqmlprofiler_p.h src/qml/jsruntime/qv4engine.cpp src/qml/memory/qv4mm.cpp src/qml/qml/qqmlcomponent.cpp src/qml/qml/qqmlobjectcreator.cpp src/qml/qml/qqmlobjectcreator_p.h src/qml/types/qqmldelegatemodel.cpp src/quick/items/qquickitem_p.h src/quick/items/qquickwindow.cpp tests/auto/quick/touchmouse/BLACKLIST tests/benchmarks/qml/holistic/tst_holistic.cpp Change-Id: I520f349ab4b048dd337d9647113564fc257865c2
| * Fix holistic benchmarkErik Verbruggen2018-01-021-3/+10
| | | | | | | | | | | | | | | | | | | | | | Each test now uses its own QQmlEngine, instead of using a single instance across all benchmarks. The effect is that peak heap usage (on macos) is now about 77MB, where it previously peaked at 770MB. This benchmark would actually crash on some platforms due to excessive malloc/mmap usage. Change-Id: I214f7b9b3d8c5565c0578b82c9c144ec87ed0f2b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Fix animation benchmarkErik Verbruggen2018-01-021-3/+3
| | | | | | | | | | | | | | This was broken by 49a11e882059ee1729f776722e085dd21d378c36. Change-Id: Ic7f261bce5e35b3dbcbdaf0b8718e08c56e55b39 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Create new engine for each benchmark runAllan Sandfeld Jensen2018-01-171-2/+7
| | | | | | | | | | | | | | | | | | | | Otherwise we end up with too many mmap'ed blocks as they appear not to be deallocated until the engine is destroyed. Change-Id: I88b8dd6d570423a492ddc6c7f105d0db97caa72d Task-number: QTBUG-60590 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>