summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Add ObjectMode coordinate mode to QGradientEirik Aavitsland2018-06-222-2/+18
| | | | | | | | | | | | | | | | | | | | | | The ObjectBoundingMode coordinate mode of QGradient allows specifying the gradient coordinates relative to the object being painted. But if the gradient brush also has a transformation, that transformation is applied in the logical, not object, coordinate space. That behavior is counterintuitive. However, changing it now would break existing code. Instead, we introduce a new coordinate mode enum with the expected behavior, and document the old one as deprecated. This prepares to fix the bugs below in qtsvg, by making it possible to specify the same behavior in Qt as SVG has. [ChangeLog][QtGui][QGradient] Add ObjectMode coordinate mode [ChangeLog][Important Behavior Changes] QDataStream version bumped up to 18 to account for changes in the serialization of QGradient. Task-number: QTBUG-59978 Task-number: QTBUG-67995 Change-Id: I8820a2555359812f3e1a46e37d6ac2cc29a2091d Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix tst_qtextbrowser for configurations with builtin testdataOliver Wolff2018-06-222-13/+25
| | | | | Change-Id: I1dc17642934e8fd2d5e3b7f245e1fb0c26b8e75a Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* winrt: Make widgets/widgets auto tests passOliver Wolff2018-06-2224-2/+185
| | | | | | Task-number: QTBUG-68297 Change-Id: I64d6e89e515a6284fbd8625cded22511de783481 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* winrt: make widgets/kernel auto tests passOliver Wolff2018-06-226-6/+125
| | | | | | Task-number: QTBUG-68297 Change-Id: I96839927fd98e2c6e533a2a3587ae66e599ec8fc Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* winrt: Make itemview auto tests passOliver Wolff2018-06-229-2/+75
| | | | | | Task-number: QTBUG-68297 Change-Id: I285dca678c34fd4170686635c7541e598442aa29 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* winrt: make dialog auto tests passOliver Wolff2018-06-224-2/+21
| | | | | Change-Id: I2d31c2e9513944ba722b59ac69e91973a7aabba5 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* winrt: Fix/blacklist failing text related auto testsOliver Wolff2018-06-223-2/+20
| | | | | | | | | winrt still has some issues with some character sets. These tests are skipped/blacklisted for now and will be investigated. Task-number: QTBUG-68297 Change-Id: I898e3383a4673b6dc87815a75e705f3302a4cbba Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* winrt: Skip QGuiApplication auto tests that do no applyOliver Wolff2018-06-221-0/+6
| | | | | Change-Id: I618eb0d6aa0bb09ab635f56e64c8d0df33c2dab3 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* tst_qresourceengine: Fix position of testqrc for builtin testdataOliver Wolff2018-06-221-1/+1
| | | | | | | | A change between 5.11 and dev has modified the position of testqrc inside the resource list. Adapt accordingly. Change-Id: I697103f4b8c9e93bb613e814c47a4e68e9a997ab Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* winrt: Skip network auto tests for nowOliver Wolff2018-06-222-2/+2
| | | | | | | | | | In order to get winrt CI checked, the network tests are being skipped for now. As soon as winrt has landed in CI, these will be fixed and re-enabled. Task-number: QTBUG-68297 Change-Id: I692d72f9e0c97840bd7396551b4e707eec845ebb Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* winrt: Make tst_qwindow passOliver Wolff2018-06-222-2/+35
| | | | | | Task-number: QTBUG-68297 Change-Id: I9b5e90faa60a4fa2063b217db3b59ea3e89e4444 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* Add tst_QDtls auto-testTimur Pocheptsov2018-06-2115-1/+1583
| | | | | | | | | | | | | | | | | | | | | | | The test is somewhat similar to tst_QSslSocket but is smaller (in scope, will grow in future), it has no QTcpSocket/QAbstractSocket-specific things and has more DTLS-specific code. At the moment it does not use our network test server, all work is done in the same process with two QUdpSockets and two QDtls objects. We test (both on client/server ends): - parameters validation (for all functions that do this) and the correctness of error codes/handshake states - handshake procedure (with/out certificates and with pre-shared keys) - timeouts and re-transmissions during (D)TLS handshake - peer verification (and related verification errors) - aborted/resumed handshake - encrypted I/O - DTLS shutdown For now, this test is OpenSSL-only. Task-number: QTBUG-67597 Change-Id: I27006bfe3d6c02b89596889e8482a782c630402a Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* QDtlsClientVerifier - add auto-testTimur Pocheptsov2018-06-193-2/+502
| | | | | | | | | | | | | | | | This part of DTLS is relatively easy to test: we never do a complete handshake. Certificates, verification, ciphers, etc. - do not matter at this stage (to be tested in tst_QDtls). Errors are mostly insignificant and can be ignored or handled trivially. The test is OpenSSL-only: SecureTransport failed to correctly implement/ support server-side DTLS, the problem reported quite some time ago and no fixes from Apple so far. Task-number: QTBUG-67597 Change-Id: I21ad4907de444ef95d5d83b50083ffe211a184f8 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* QTreeWidget: Keep items hidden even if their parents are reparentedAndy Shaw2018-06-151-0/+30
| | | | | | | | | | | When an item is explicitly hidden, then it should stay that way even if its parent is reparented. The item itself needs to be explicitly shown for it to be made visible. Task-number: QTBUG-54843 Change-Id: I0c6eea9a936f82d5874e3246292bd16365440411 Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Blacklist tst_QMenuBar::check_menuPositionJoni Jantti2018-06-151-0/+1
| | | | | | | | This autotest fails on Ubuntu 18.04 builds. Task-number: QTBUG-68865 Change-Id: Ia245f72826be071e5617c417e3d9f50bdcc689a9 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Blacklist tst_QWidget_window::setWindowStateJoni Jantti2018-06-151-0/+1
| | | | | | | | This autotest fails on Ubuntu 18.04 builds. Task-number: QTBUG-68864 Change-Id: Ib4baa458b80eea5861e89145b85d865e9a78989c Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Blacklist tst_QWidget::updateWhileMinimizedJoni Jantti2018-06-151-0/+1
| | | | | | | | This autotest fails on Ubuntu 18.04 builds. Task-number: QTBUG-68862 Change-Id: Ib02c28ede135c9ba4303dbf0224b32b080762a31 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Blacklist tst_Gestures::graphicsItemGestureJoni Jantti2018-06-151-0/+2
| | | | | | | | This autotest fails on Ubuntu 18.04 builds. Task-number: QTBUG-68861 Change-Id: I343d8b583d105a7e1cc336e94399cde9eb261e9c Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Blacklist tst_QThread::createJoni Jantti2018-06-151-0/+2
| | | | | | | | This autotest fails on QEMU armv7 builds. Task-number: QTBUG-68866 Change-Id: Idb4bf39712a22c40f6d779a46ad2dd1f456ef48b Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Blacklist tst_QGlyphRun::mixedScriptsJoni Jantti2018-06-151-0/+3
| | | | | | | | This autotest fails on Ubuntu 18.04 and QEMU builds. Task-number: QTBUG-68860 Change-Id: I1907e713e8c743cf5cf8e284df516600a0c03dba Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* tst_QWidget: Don't use qWaitForWindowActive when exposed is enoughJohan Klokkhammer Helsing2018-06-151-5/+5
| | | | | | | | | | It's not possible to ask for window activation on Wayland, and some Wayland compositors—such as Weston—don't give window focus to newly created window either. Task-number: QTBUG-62188 Change-Id: Ibebb2a14e03127fec703d79498627fccf65b2f88 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* De-parameterise tst_QNetworkReply::ignoreSslErrorsList()'s urlEdward Welbourne2018-06-131-8/+7
| | | | | | | | | It was the same in all test rows, so move it from the _data() to a fixed value in the test. Also, don't implicitly coerce C-string literals to QString. Change-Id: Ieee4c7ffbf251c4b69b5acd79125dfa93eb51d6e Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Extend blacklisting of QSemaphore tests to macOS 10.13Tony Sarajärvi2018-06-111-0/+2
| | | | | | Task-number: QTBUG-58745 Change-Id: Iad16beef04a7b52786b5415944d582d33b1120c8 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Add itemAlignment property to QListViewAlexander Volkov2018-06-081-0/+24
| | | | | | | | | | | | | | | | This property allows to change the default behavior in which list items occupy the entire width of their column. Setting it to Qt::{AlignLeft,AlignRight,AlignHCenter} will reduce their widths to the minimum values, thus allowing to have intermediate free space. Then the user will be able to begin selections by mouse from this space. [ChangeLog][QtWidgets][QListView] Added itemAlignment property. Task-number: QTBUG-56606 Change-Id: Iae55c251379be4e45d0c0d69175ff4388b5785b4 Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* QCborValue: add support for QVariant and JSON conversionsThiago Macieira2018-06-083-0/+347
| | | | | | | Plus QStringList. Change-Id: I39332e0a867442d58082fffd1508dfb9b540af23 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Merge "Merge remote-tracking branch 'origin/5.11' into dev" into ↵Liang Qi2018-06-0824-49/+100645
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/5.11' into devLiang Qi2018-06-0724-49/+100645
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf src/corelib/kernel/qeventdispatcher_cf.mm src/gui/kernel/qguiapplication_p.h src/gui/kernel/qwindowsysteminterface.cpp src/gui/kernel/qwindowsysteminterface.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/cocoa/qnswindowdelegate.mm src/plugins/platforms/ios/qioseventdispatcher.mm src/plugins/platforms/windows/qwindowsdrag.h src/plugins/platforms/windows/qwindowsinternalmimedata.h src/plugins/platforms/windows/qwindowsmime.cpp src/plugins/platforms/winrt/qwinrtscreen.cpp Change-Id: Ic817f265c2386e83839d2bb9ef7419cb29705246
| | * Fix HDR format in QOpenGLFramebufferObject::toImage()Allan Sandfeld Jensen2018-06-061-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | If the fbo had samples > 0 set, it would use a temporary fbo with a default configuration losing the HDR precision. Change-Id: I7e9966165b3100f148c4ad24738f3ee71273f29a Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
| | * Fix QTransform::transposed() result having wrong transformation typeEirik Aavitsland2018-06-061-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The implementation of QTransform::transposed() had a wrong assumption about the type of the result. Task-number: QTBUG-68630 Change-Id: Ia5ce794efe773d74fb5fdaff3da8cae2b452e7e5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| | * Add binary compatibility files for 5.11 for QtBaseMilla Pohjanheimo2018-06-0511-0/+100472
| | | | | | | | | | | | | | | | | | | | | | | | Binary compatibility files for bic test added Change-Id: Ie540ea0084c72a6a0ae7c47831ecbcc0dd7030b9 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Use qFuzzyCompare instead of qFuzzyIsNull in QPointF ==Allan Sandfeld Jensen2018-05-301-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qFuzzyIsNull has a fixed range, where qFuzzyCompare can tell if numbers are different in a more relative range. Without it QPointFs that are heavily scaled will be interpreted as identical, when they are quite different at their own scale. Task-number: QTBUG-60359 Task-number: QTBUG-62161 Change-Id: Ic4ba90e9e994aedff5548d690f053eb309b0a60b Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Make sure we can build with -no-feature-draganddropJoerg Bornemann2018-05-299-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | We move QInternalMimeData to a separate file, because this class is used, even if draganddrop is disabled. From now on, include qinternalmimedata_p.h instead of qdnd_p.h for QInternalMimeData. Change-Id: I594e08e2e90d574dc445119091686b4b69e4731b Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
| | * macOS: Fix QFileSystemWatcher to watch paths with the same prefixMikhail Svetkin2018-05-291-28/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | It happens because our filesystemwatcher thinks it is subdirectory and not two different paths Task-number: QTBUG-60676 Change-Id: Ic753e9481cb26303a030044e0a5ab4d703bc529f Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
* | | Long live DOM API for CBOR!Thiago Macieira2018-06-083-0/+1502
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is very similar to QJsonDocument, but there's no QCborDocument. QCborValue is that. [ChangeLog][QtCore] Added QCborValue, QCborArray and QCborMap, classes that permit DOM-like access to CBOR data. The API is similar to QJsonValue, QJsonArray and QJsonObject, respectively. Change-Id: I9741f017961b410c910dfffd14ffca50dd8ef3ba Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | | tst_QWidget: Don't skip tests that are passing on WaylandJohan Klokkhammer Helsing2018-06-071-7/+0
|/ / | | | | | | | | | | Task-number: QTBUG-66849 Change-Id: I35f5bc557fca5289570a6e907c0fd80f17a3aa0f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QLineEdit: Emit inputRejected() when part of the input is rejectedAndy Shaw2018-06-061-0/+12
| | | | | | | | | | | | | | | | | | | | | | When pasting text, it is possible that part of the text is still pasted but part of it is not. For example, if there is a maximum length set then only the first part of the text is pasted and the rest is dropped. In this case it should still emit inputRejected() as not all of the input was accepted. This amends c901cdadc0a6ec65eddfe4f181274e56567f9973. Change-Id: If7906767be27e88ed9914c50bf0427833de5b8fa Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QCborStreamReader: use QByteArray directly if possibleThiago Macieira2018-06-061-11/+167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QIODevice represents considreable overhead, even with just QBuffer, for parsing simple things. Benchmarking showed it was spending 25% of the parsing time inside one QIODevice function or another. So this commit accomplishes two things: 1) it increases the buffer size from 9 bytes to up to 256, which should reduce the number of calls into the QIODevice 2) if the source data is a QByteArray, then use it directly and bypass the QIODevice, thus increasing performance considerably Change-Id: I56b444f9d6274221a3b7fffd150c531c9d28e54b Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Handle negative leading in layoutAllan Sandfeld Jensen2018-06-061-14/+9
| | | | | | | | | | | | | | | | Adjust line positions to deal with negative leading which isn't included in height of QTextLine. Change-Id: Id7918968c0f9d7e65700b9e7a08fc5d761883f22 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | MySQL: Handle TIME types as a string to allow the full range of dataAndy Shaw2018-06-061-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As the full range of TIME is '-838:59:59' to '838:59:59' then we cannot use QTime as the object to store this data in. Therefore a QString is used instead for passing the data to and from. This does not impact existing code using QTime already as it will still convert it from the QString to a QTime to give the same result as before. [ChangeLog][QtSql][MySQL] The TIME data type is now treated like a string-based type in order to respect the full range of the TIME data type. Task-number: QTBUG-57028 Change-Id: Ieb7105bff3043b845f76bc873d088e6bac1e4f10 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Skip tst_QWindow::modalDialogClosingOneOfTwoModal without activationJohan Klokkhammer Helsing2018-06-061-2/+2
| | | | | | | | | | | | | | | | | | The test doesn't make much sense on platforms that don't support window activation. Task-number: QTBUG-66849 Change-Id: I875314d026d666173ec345d0864ad41d66179783 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | Don't skip tst_QWindow::isExposed on WaylandJohan Klokkhammer Helsing2018-06-061-3/+0
| | | | | | | | | | | | | | | | The test is actually passing, so just enable it. Task-number: QTBUG-66849 Change-Id: Ie1566b9e5e19f5ab6d919624aa14662a1d4483ec Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | tst_QWindow: Don't skip tests on Wayland without explanationJohan Klokkhammer Helsing2018-06-061-2/+2
| | | | | | | | | | | | | | | | | | | | Link to a bug report so we can track the failures and figure out how to fix it in Qt Wayland or if we should skip the tests in a proper way. I.e. with platform capabilities or similar. Task-number: QTBUG-66849 Change-Id: I7a16333c7d2284eb9da6efd4515891438e9976b3 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | tst_Http2 auto-test: stop sending DATA frames if test failedTimur Pocheptsov2018-06-043-6/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Unlike QNAM, our toy http2 server sends payload as one big chunk as soon as it fits in the receive window's size. Internally, 'frame writer' splits this payload into many DATA frames of the appropriate size (imposed either by the default value or the one from the client's SETTINGS frame). If some test fails, we can end up with a server waiting for the writer to send all the DATA frames though it is not needed anymore - there is nobody to receive them after a failure. This patch moves such a loop into the test server instead and stops the loop early if needed. Change-Id: Iea2dcd718d8f83386fd16004807f6447bf999435 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Improve std::tuple handling in testsSamuel Gaist2018-06-0310-0/+228
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently when doing comparison with std::tuple the fallback toString method is called which returns a Q_NULLPTR thus not allowing proper diagnostic of the values that triggered an error. This patch adds support for std::tuple to improve the tests output readability. [ChangeLog][QtTest][QCOMPARE] Now outputs contents of std::tuple on failure. Change-Id: I046a55e2ce44c3f7728d51e4745120d38aa5e007 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QLineEdit: Add an inputRejected() signal for when a key is not allowedAndy Shaw2018-06-011-1/+40
| | | | | | | | | | | | | | | | | | | | [ChangeLog][QtWidgets][QLineEdit] Added inputRejected() signal for when a key press is not accepted by the QLineEdit. For instance, when an invalid key is pressed for a validator set. Task-number: QTBUG-57448 Change-Id: I39182a78b07b37c6da01905b8da4c57930e3454b Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Eliminate an un-needed #includeEdward Welbourne2018-05-311-1/+0
| | | | | | | | | | | | | | Nothing in this test references date-times. Change-Id: I4005cda550d54abe46370963b1e91fab9829298d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | Provide presets for QGradientTor Arne Vestbø2018-05-311-0/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | Similar to Qt::GlobalColor, the presets allow the user to create brushes based on predefined gradients, quickly getting pretty pixels on screen. The presets are based on the linear gradients from WebGradients, a free collection of gradients, hosted at https://webgradients.com/. The few radial and blended gradient presets have been excluded. Change-Id: I1ce8f2210a6045c9edb8829ab3eddcc313549127 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | tst_qstandardpaths: #if-out a function only used within #if-eryEdward Welbourne2018-05-311-0/+2
| | | | | | | | | | | | | | | | Avoids an unused function warning. Change-Id: Id221595920e9a34eb83b66fe123d664f60fcae05 Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | Show the display role inside the editor for the relation in a QComboBoxAndy Shaw2018-05-292-0/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a QComboBox is used as the editor for a relation inside a view then it could end up showing the contents of the EditRole. This would be the field which is used to represent the entry as opposed to the DisplayRole which is what the user would expect to see is. Therefore, setEditorData() is overridden to ensure that it is showing the right data to the user. When the model gets updated, it will take the corresponding EditRole value as before to ensure it is updated correctly. Task-number: QTBUG-59632 Change-Id: Ibbccc3e9477de1cdefb654051b97dd111df36382 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-05-291-4/+14
|\| | | | | | | Change-Id: I8d8b03ea46c537b091b72dc7b68aa6aa3a627ba6