summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Move QOpenGLTextureBlitter from QtGui to QtOpenGLJohan Klokkhammer Helsing2020-02-041-1/+1
| | | | | | | Task-number: QTBUG-74409 Change-Id: Ie4a3dfd01ba44715de6da71c4420fe9a95a0c242 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* Cleanup code where we mixed QHash and QMultiHash iterator codeLars Knoll2020-02-031-13/+17
| | | | | Change-Id: Ib229cad13ca21d6288e009c6ee1c39fa974f80b8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Separate streaming of QHash and QMultiHash/QMap and QMultiMapLars Knoll2020-02-031-7/+60
| | | | | | | | | | Those classes will not have relations anymore in Qt6, so they need separate streaming operators. Writing of multi maps/hashes requires some additional care so that restoring keeps the order of how iteme have been inserted. Change-Id: If41d0c5c24962764a2cb81bd2de9e2fadf1a2b63 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* QButtonGroup: remove deprecated signalsVitaly Fanaskov2020-02-021-32/+5
| | | | | | Task-number: QTBUG-80906 Change-Id: I6f697b0a070ba4c401117fe7cdf02429b47d9a11 Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
* Move old tst_QLocale::negativeZero() to tst_QString::number()Edward Welbourne2020-01-302-12/+31
| | | | | | | | | It was more complex than it needed to be and was a test of QString, not of QLocale. This leaves tst_QLocale::negativeZero() available to now test how QLocale handles negative zero. Change-Id: Ic9aae250c29f579e6d60fba8404b38673a3b489f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Preserve the case of the exponent separator CLDR suppliesEdward Welbourne2020-01-302-13/+13
| | | | | | | | | | | | | | | | | | | | | | We have long (since 4.5.1) coerced it to lower-case, for no readily apparent, much less documented, reason. CLDR says most locales use an upper-case E for this - let's actually use what CLDR says we should use. The code that matches the exponent separator was doing so case-insensitively in any case; that needed adaptation now that the separator's case isn't pre-determined; and, in any case, should have been done using case-folding rather than upper-casing. In the process, removed some spurious checks for "'e' or 'E'" in the result, since the exponent separator is always represented by 'e' (and an 'e' might also be present for the separate reason of its use as a beyond-decimal digit representing fourteen). [ChangeLog][QtCore][QLocale] QLocale::exponential() now preserves the case of the CLDR source, where previously it was lower-cased. Change-Id: Ic9ac02136cff79cb9f136d72141b5dbf54d9e0a6 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Core: Add a QTypeRevision classUlf Hermann2020-01-301-0/+115
| | | | | | | | | | | | | | | | QTypeRevision is needed to encode the value of the new two-argument Q_REVISION(major, minor) macros. Those, in turn are necessary because the minor version resets to 0, and we need to take the major version into account when stating revisions for Qt classes. Task-number: QTBUG-71278 Change-Id: I63eff6eab7d6e4f8f32b359a216767c98947a106 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix a few test cases to not rely on QMultiHash only API for QHashLars Knoll2020-01-302-2/+2
| | | | | Change-Id: If4a741adec6f93d14bd5b21baa1dd062b49898ec Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Adjust QVariant autotest to prepare for upcoming QHash changesLars Knoll2020-01-301-24/+4
| | | | | | | QHash won't contain an insertMulti() method anymore. Change-Id: I507e76d496c3a33a6e88d15aa30df06c07eeba9f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Split QHash and QMultiHash in auto testLars Knoll2020-01-301-7/+60
| | | | | Change-Id: I0f31feaca740abe33f36a8c117d64447ddcc8043 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix tests in QHash that would read beyond end()Lars Knoll2020-01-301-2/+13
| | | | | | | | | A couple of tests in the QHash autotest could iterate beyond end(), leading to undefined behavior. This is bound to crash with the new upcoming QHash implementation. Change-Id: I977fc939e6e472f05b7cb2fa0a79c2d5f8782f45 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Don't enforce C++11Lars Knoll2020-01-301-1/+0
| | | | | | | We require C++17 in Qt6 Change-Id: I2dde485524208a1c7131869f4267f44ad2b32e9f Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Remove deprecated functionality from QSetLars Knoll2020-01-301-146/+1
| | | | | | | Remove support for reverse iteration over a QSet. Change-Id: I1e9c986a118aea4ebeb7fcdceb41e9ce6593cdb6 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Adjust autotest to coming QHash changesLars Knoll2020-01-301-14/+8
| | | | | | | | QHash and QMultiHash are separate classes in the future, and the iterator is not random access. Change-Id: I7e1a4162ca964001c8da81a2fd7c41ccae27bdb3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Some fixes to collection autotestLars Knoll2020-01-301-15/+6
| | | | | | | Split QHash and QMultiHash, and get rid of some compiler warnings. Change-Id: I48991f097f408ad5c1aa349443e26ab816e0b736 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Prepare for separating QHash and QMultiHashLars Knoll2020-01-301-142/+79
| | | | | | | | Prepare the test cases so that QHash and QMultiHash are used as if they were fully independent classes. Change-Id: Iaf5d65c8f6321ec2edaef490e657b144619655a0 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devSimon Hausmann2020-01-2839-121/+9192
|\ | | | | | | Change-Id: Ia5727ce68001bcaab467f5fae3a4933d1217015f
| * Merge "Merge remote-tracking branch 'origin/5.14' into 5.15"Qt Forward Merge Bot2020-01-2823-66/+9093
| |\
| | * Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-01-2823-66/+9093
| | |\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/image/qpnghandler.cpp Change-Id: I8630f363457bb613d8fb88470a71d95d97cdb301
| | | * Make sure the focus is passed on correctly when back-tabbingAndy Shaw2020-01-251-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the tested widget has a focus proxy, then we should check if the current focus widget is not the same as that focus proxy before setting it to be the widget that gets focus. This ensures that when back-tabbing from a widget like QDoubleSpinBox that it will not get stuck inside that widget and will back-tab to the next correct one. Fixes: QTBUG-81097 Change-Id: I3f689c7715da7f3ce8c3d2f616041528f5778a2f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | | * QXmlStreamReader: early return in case of malformed attributesGiuseppe D'Angelo2020-01-232-0/+9005
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's no point at keep raising errors after encountering the first malformed attribute. Change-Id: Idb37e577ea96c3bd850b3caf008fe3ecd57dd32e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * Flatten version-specific blacklisting on macOS to all macOS versionsTor Arne Vestbø2020-01-2215-61/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't know which versions these blacklistings actually apply on unless we actually get macOS 10.14 and 10.15 into the CI and running tests, so let's start with that, and then granularize the blacklists after that. Task-number: QTBUG-75786 Change-Id: Id79642afa50cb20efa2cd209286b6933918d3a4a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | | * Blacklist tstPauseAnimation::noTimerUpdates on macOSTor Arne Vestbø2020-01-221-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-75786 Change-Id: I89d81a9d0f5f301f325044dee2395d441c0d5970 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | | * Extend blacklisting for a few tests to include all macOS versionsTor Arne Vestbø2020-01-222-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-75786 Change-Id: I06867de99a19f9e46ac0eeea10a7365a30c49c6d Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | | * Blacklist two tst_QScroller tests on macOSTor Arne Vestbø2020-01-221-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-75786 Change-Id: I43e0a9a6e28a67f6aa1f2adaecd60ed0d65601d4 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | | * Blacklist tst_QAbstractItemView::task200665_itemEntered on macOSTor Arne Vestbø2020-01-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-75786 Change-Id: I74720b4015e38c846dbc5c6a93f056f8deb3552a Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | | QComboBox: unify behavior of setModel() and modelResetChristian Ehrlicher2020-01-281-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a new model is set, a valid index is selected. When a model is reset, this is not the case which is slightly inconsistent. Fix it by using the same logic to find a valid index when the model is reset Fixes: QTBUG-80998 Change-Id: I6c167511e199a6664343cf1dc3bcd27c65389bfd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * | | Deprecate all methods that use QMatrixJarek Kobus2020-01-2815-48/+95
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't use QMatrix in implementation classes anymore. Task-number: QTBUG-46653 Fixes: QTBUG-81627 Change-Id: I4806c1302e42645dc6a608062c8d9c336ae8629b Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Merge "Merge remote-tracking branch 'origin/5.15' into dev"Qt Forward Merge Bot2020-01-2834-44/+275
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-2834-44/+275
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qsettings.cpp src/corelib/kernel/qvariant.cpp src/corelib/serialization/qjsoncbor.cpp src/corelib/serialization/qjsonvalue.cpp src/corelib/tools/tools.pri src/gui/image/qimage.cpp src/gui/kernel/qguivariant.cpp src/widgets/kernel/qshortcut.cpp tests/auto/tools/moc/allmocs_baseline_in.json tests/auto/tools/moc/tst_moc.cpp src/opengl/qglframebufferobject.cpp Done-With: Edward Welbourne <edward.welbourne@qt.io> Done-With: Leander Beernaert <leander.beernaert@qt.io> Change-Id: Ie7f5fa646c607fe70c314bf7195f7578ded1d271
| | * | QStringList: use local storage in removeDuplicates()Marc Mutz2020-01-262-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If available, use a C++17 std::pmr::unordered_set with a monotonic buffer resource and a 256-byte stack buffer to avoid the per-element allocations of QSet. Results on my machine: RESULT : tst_QStringList::removeDuplicates():"empty": - 0.00014 msecs per iteration (total: 74, iterations: 524288) + 0.000031 msecs per iteration (total: 66, iterations: 2097152) RESULT : tst_QStringList::removeDuplicates():"short-dup-0.00": - 0.00043 msecs per iteration (total: 57, iterations: 131072) + 0.00013 msecs per iteration (total: 69, iterations: 524288) RESULT : tst_QStringList::removeDuplicates():"short-dup-0.50": - 0.00049 msecs per iteration (total: 65, iterations: 131072) + 0.00032 msecs per iteration (total: 85, iterations: 262144) RESULT : tst_QStringList::removeDuplicates():"short-dup-0.66": - 0.00057 msecs per iteration (total: 75, iterations: 131072) + 0.00039 msecs per iteration (total: 52, iterations: 131072) RESULT : tst_QStringList::removeDuplicates():"short-dup-0.75": - 0.00064 msecs per iteration (total: 85, iterations: 131072) + 0.00048 msecs per iteration (total: 63, iterations: 131072) RESULT : tst_QStringList::removeDuplicates():"long-dup-0.00": - 0.083 msecs per iteration (total: 85, iterations: 1024) + 0.039 msecs per iteration (total: 80, iterations: 2048) RESULT : tst_QStringList::removeDuplicates():"long-dup-0.50": - 0.11 msecs per iteration (total: 58, iterations: 512) + 0.078 msecs per iteration (total: 80, iterations: 1024) RESULT : tst_QStringList::removeDuplicates():"long-dup-0.66": - 0.13 msecs per iteration (total: 70, iterations: 512) + 0.10 msecs per iteration (total: 53, iterations: 512) RESULT : tst_QStringList::removeDuplicates():"long-dup-0.75": - 0.16 msecs per iteration (total: 86, iterations: 512) + 0.13 msecs per iteration (total: 69, iterations: 512) When interpreting the data, take into account that each iteration contains _also_ a deep copy of the QStringList d/t the detach from 'input'. The pattern is used elsewhere in Qt, so I've put the class that implements the seen set into a private header file and used in some other places I found. Change-Id: I1f71a82008a16d5a3818f91f290ade21d837805e Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
| | * | QMenu: don't crash when another popup is closed when a popup is closedChristian Ehrlicher2020-01-251-0/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When closing a popup (submenu) triggers closing another popup (the menu) programatically it can happen that QApplicationPrivate::popupWidgets is destroyed. Therefore we have to check if popupWidgets is still valid after the focus change event was delivered. Fixes: QTBUG-81222 Change-Id: Ide3a6897e43f389d396a80d8b158f7c8eb04e3aa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| | * | Introduce Q_PROPERTY attribute REQUIREDFabian Kosmale2020-01-232-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is meant to correspond to required properties in QML. Change-Id: I2645981e13f7423bc86b48370c165b3cfe2aaa62 Task-number: QTBUG-81561 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * | QSslCertificate: migrate to QRegularExpressionSamuel Gaist2020-01-231-28/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is part of the migration of qtbase from QRexExp to QRegularExpression. If support for regular expression is disabled, fixed string can still be used. [ChangeLog][QtCore][QSslCertificate] Add overload of fromPath that does not make use of QRegExp and deprecate the QRegExp variant. Task-number: QTBUG-72587 Change-Id: I507d8941cc7d70166da0948375dc421fe5e7d967 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| | * | Regenerate qsb files for auto and manual testsLaszlo Agocs2020-01-2227-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They are now version 4, which is hopefully the final format, relying on nothing but QDataStream. Except for the qshader autotest which tests all the 1..4 versions and so needs appropriate test data. Also unifies the batch file naming. Change-Id: Iec478be86d14dbec7ffb9d5f9b62c14fca5d7c9e Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
| | * | QTabBar: fix QStyleOptionTab::positionChristian Ehrlicher2020-01-221-10/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During 556712f511a02ff8101e648d2e6f0090231d4f3d a small regression was introduced which set a wrong value for QStyleOptionTab::position. Fixes: QTBUG-81393 Change-Id: Ie8c66186b1b79c97bf77c7b139e08840233b7b66 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | | QProcess: remove deprecated signature of finished signalVitaly Fanaskov2020-01-281-90/+18
|/ / / | | | | | | | | | | | | | | | Task-number: QTBUG-80906 Change-Id: Ic9852bc5031d357d23ff6c13a65d020a4b6ea3d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Move QOpenGLTexture and related classes from QtGui to QtOpenGLJohan Klokkhammer Helsing2020-01-241-1/+1
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-74409 Change-Id: Ied825dd7cb92365505a4aa43fd67488024160341 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | | Move QOpenGLPaintEngine and related classes from QtGui to QtOpenGLJohan Klokkhammer Helsing2020-01-225-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Also moves the openglwindow test to the opengl folder, as it makes use of these classes. Task-number: QTBUG-74409 Change-Id: Id9f0013cedcc8bd1e87122c005641d7298525045 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
* | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-191-0/+1
|\| | | | | | | | | | | Change-Id: I68702c9f9680772d332b5bb777ddd2663168abd5
| * | QUdpSocket: Blacklist writeDatagramToNonExistingPeer for msvc2019Mårten Nordheim2020-01-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Same as other versions of MSVC Fixes: QTBUG-80328 Change-Id: I05c5ffe6d36e0cdfb781080a736c90b6a6d4b2ba Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | Merge "Merge remote-tracking branch 'origin/5.15' into dev"Qt Forward Merge Bot2020-01-1732-46/+255
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-01-1632-46/+255
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/widgets/kernel/qshortcut.cpp tests/auto/network/access/spdy/tst_spdy.cpp Change-Id: If76c434beac2c0a393440aa365f89f77439774ce
| | * | QResource: Add API to get the decompressed contentThiago Macieira2020-01-157-4/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtCore][QResource] Added uncompressedSize() and uncompressedData(), which will perform any required decompression on the data, prior to returning (unlike data() and size()). Change-Id: Ief874765cd7b43798de3fffd15aa053bc505dcb1 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
| | * | Merge remote-tracking branch 'origin/5.14' into 5.15Qt Forward Merge Bot2020-01-1526-43/+162
| | |\| | | | | | | | | | | | | Change-Id: I8dbcf23835d52d3aa7d018ed250814d60c68aa83
| | | * uic/Python: Fix missing QCursor importFriedemann Kleint2020-01-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: PYSIDE-1182 Change-Id: I1ccc524a152ea75508166f3d2c0c60f8d829cd8f Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
| | | * Combine negativeYear() and printNegativeYear()Edward Welbourne2020-01-141-22/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | They overlapped and the latter had duplicated code, so make them into a single data-driven test. At the same time, replace the '-' at the start of the expected string with QLocale::negativeSign(), since the test fails otherwise when LC_NUMERIC=nb_NO on Linux (Debian/testing). Change-Id: I051c75abff16b2e6f8278fcb152b6bde14c71f9a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | | * uic: add customwidget imports support for pythonCristián Maureira-Fredes2020-01-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-81073 Change-Id: I29659481b14927ffcb8f2cb1829b577a67e4b937 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| | | * Clarify blacklisting of tst_QWidget::childEvents on macOSTor Arne Vestbø2020-01-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test expects a very explicit list of events during show, but on macOS we also get an InputMethodQuery event as a result of the window becoming active. The test needs to be written significantly to support these kind of platform differences. Change-Id: I395c1e9e4e9baf7d9f88f0d067586fc15afb9a16 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| | | * Extend blacklisting of tst_QWidget::showMinimizedKeepsFocus to all macOS ↵Tor Arne Vestbø2020-01-141-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | versions For some reason the firstChild gets the focus when clearing the focus. This seems to be timing dependent, as removing the 30ms qWait 'fixes' the issue. So does a processEvent call before minimzing. Both of these require further investigation. Change-Id: I62833a5541712f97dc24bc63384fa4c051096537 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>