summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* Fix clipping of QTextList decorators.Leonard Lee2013-05-236-0/+318
| | | | | | | | | | | | | | | | List decorators may be clipped if you set a large font size and/or small indent for a QTextList. This fix is to prevent clipping by moving list decorators and items to left (or to right in case of right to left layouts) so that the list decorator is always painted inside the layout. This commit fixes painting related issue, so auto test is not needed. The manual test program can be used for verification purposes. Task-number: QTBUG-5111 Change-Id: I7fdd92399445d33fe9eaf525a05fe5cd860b57c6 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Process initial expose events immediately.Morten Johan Sørvig2013-05-231-0/+4
| | | | | | | | | | | | Required to prevent qmlscene flicker on startup. Also brings back that qWait() in tst_QGL::graphicsViewClipping() that seems necessary after all. Amended-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Change-Id: I14ba6e18ac98e5df1ce8ecbc263b30176b67d111 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
* Stabilize tst_qgraphicssceneindex.Friedemann Kleint2013-05-231-1/+1
| | | | | Change-Id: I8cda10a5a4c9bf949b560e7be4da9bef92667688 Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
* QPrintPreviewDialog: Prevent changing of page in resize handling.Friedemann Kleint2013-05-231-0/+46
| | | | | | | Task-number: QTBUG-14517 Change-Id: I59e444eed8d44be9fb7213fdbab4be473d595be8 Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* Fixed autotest build for configurations without printsupportOliver Wolff2013-05-211-1/+1
| | | | | | Change-Id: I7fc4a6e4885e9640ecfbe93547fb56868ebba309 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* QThreadPool: Fix regression from Qt 4 in dealing with priority startsThiago Macieira2013-05-201-0/+53
| | | | | | | | | | | | The optimisation done in cbaf52b09971edf6f3e1458f7dd677b80a1568ed for Qt 5.0 got the order wrong of the comparison. The queue must be sorted in decreasing priority order. But since higher numbers mean higher priority, that means the queue must be sorted in decreasing priority number order. Task-number: QTBUG-29163 Change-Id: Iaf3424b9bb445bf5c71518927f37253cead454f3 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* QtCore: fix the number precision in QJsonDocument.toJson()Liang Qi2013-05-201-12/+65
| | | | | | | | | | | | | | In JSON, any number is stored in double. We need to make sure we keep the maximum possible number precision for integer number. In IEEE 754 double format, the significand precision is 53 bits(52 explicityly stored). Autotest is included. qint64 and double work fine. Task-number: QTBUG-28467 Change-Id: I7f857671c50e4334e9329c778f9b4f090f490540 Reviewed-by: Sune Vuorela <sune@vuorela.dk> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* moc: Fix Generator::registerableMetaTypeOlivier Goffart2013-05-201-0/+2
| | | | | | | | when the type is a pointer to a registerable 1 argument template type. Task-number: QTBUG-31002 Change-Id: Iac0d6b71b2b805a1876110a0781d02188083c4e5 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* moc: recover bad template parsing.Olivier Goffart2013-05-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | When encountering code such as: X<a<b> moc does not have the mean to know if 'a' is a type or a variable, so the type parser currently assume that '<' always open a template parameter. (instead of being the operator<) The type parser do not care about the actual type, it just need to strip the string out. The problem is that then the whole rest of the file will be considered as the type. With this patch, we also stop the parsing at semicolon. The type will be wrong, but this allow the parser to recover and it will continue to look for more classes after this. (In other words, moc will no longer break if it encounter such construct in a header. But it will still not parse such types correctly if used within a Q_OBJECT class) Task-number: QTBUG-31218 Change-Id: I1fef6bc58493d7c00df72401c9ad55463b24eaa7 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* QtWidgets: avoid integer divide by zero in QProgressDialogLiang Qi2013-05-151-0/+11
| | | | | | | | Autotest is included. Task-number: QTBUG-31046 Change-Id: Ie549b59112f458de478294fa00443a3cf6898c85 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* QGV: fix items not to be selected on right mouse button releaseJ-P Nurmi2013-05-141-0/+28
| | | | | | | Task-number: QTBUG-30990 Change-Id: I421d9169b592da2b468eceb9df4f3f7c6a06e8d6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
* tst_qmdiarea: Prevent scrollbars from messing up expected viewport calculationTor Arne Vestbø2013-05-141-3/+9
| | | | | | | | | | | | | | | | | | With scrollbars enabled we would get two resize events when tiling the windows. First one with the expected viewport size, and then a second one with a bigger viewport when the QMdiArea calculated that the space it set off for scrollbars was not needed after all. Depending on whether or not the geometry propagation of the platform plugin was synchronous or not, we would get one or both of the events before evaluating the viewport size against the expected size, resulting in flakeyness, and an expected fail on OS X. We now explicitly disable the scrollbars during the test, and restore them for the latter test that verifies that scrollbars show up when the area is resized below the minimum size of the combined child widgets. This allows us to unskip the expected failure on OS X, and should make the test less flakey. Change-Id: Ief767456cfd79f5cd0bb0e220c40e5995674ff71 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix QMetaType benchmark.Jędrzej Nowacki2013-05-131-1/+2
| | | | | | | | Void is not constructible, so there is no point in checking how fast it can be constructed. Change-Id: Icb4b607bebce30fff5fc57b105101f019e0e0db5 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* test: Remove XFAIL from tst_qwidgetSergio Ahumada2013-05-131-4/+0
| | | | | | | | | | XPASS : tst_QWidget::update() QCOMPARE(w.numPaintEvents, 1) returned TRUE unexpectedly. Loc: [tst_qwidget.cpp(4017)] Change-Id: Ib7664871ed218f4c88fd2430491fa65443651927 Reviewed-by: Simo Fält <simo.falt@digia.com> Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Build manual test for widgets from toplevel.Friedemann Kleint2013-05-134-1/+7
| | | | | | Change-Id: I411cfc28d2021eed0acf3949a141ffded1acdecc Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Disabling some concurrency in widget testsSimo Fält2013-05-102-2/+0
| | | | | | | | | | | There has been frequent failures with CI, especially with OSX 10.7. These seems to work ok in CI node when ran alone but CI is running those in parallel with some other tests, and this is causing errors, most likely due to lost focus. Change-Id: Ic4151099c27a4b5d91778c9b13e88d2d661e8a0d Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Rename Numpad to Num, ensure Numpad is translated in all cases on Mac.Mitch Curtis2013-05-101-4/+4
| | | | | | | | Numpad is unnecessarily long. Change-Id: I19a6ce129e26a4f6f8344f514317214c48abde6e Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: David Faure (KDE) <faure@kde.org>
* Make QFlags enum flags (C++11 strict enums) friendlyAlbert Astals Cid2013-05-091-0/+116
| | | | | Change-Id: I9ccb3e4d281a545ca1845db4f6aa7ac6c04e8621 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Stabilize QGraphicsWidget test.Friedemann Kleint2013-05-091-15/+12
| | | | | | | | | | | | | | | The test showed frequent failures with XCB in initialShow2() (line 3200) after 01bc34088eb8e7fb4842fa1c2117cddbac086136 (QTBUG-30923) which can be fixed by ensuring the widget from the HFW-test is deleted. Use QScopedPointer to ensure widgets are always deleted in case of test failures, too. Task-number: QTBUG-20778 Task-number: QTBUG-30923 Change-Id: I2af7737b604820463f760d6b6787dd5a5a93d602 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Fix a case of connect()ing to signals declared in a base classOlivier Goffart2013-05-091-0/+25
| | | | | | | | | | | | | | Fix connection to pointer to member signal that belongs to the base class, but whose type is a pointer to a member of the derived class. The current code only use the QMetaObject of the type coming from the function type to look up the signal id. But if the signal was casted to a pointer to member function of a derived type, then we also need to look in the base classes Change-Id: Ib98fc38f63942946acb34d9f83c100991d58e4e5 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Revert QDateTime serialisation to pre-Qt 5 behaviour.Mitch Curtis2013-05-082-4/+19
| | | | | | | | | | | | | | In Qt 5, I managed to break the guarantee that a deserialised local datetime is the same time of day (potentially different UTC time), regardless of which timezone it was serialised in. This happened after I fixed QTBUG-4057 with If650e7960dca7b6ab44b8233410a6369c41df73a, which serialised datetimes as UTC. This patch reverts QDateTime serialisation to pre-Qt 5 behaviour to restore the guarantee and consequently re-opens QTBUG-4057. Change-Id: Iea877f7ed886f530b928067789b53534e89fe8cb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix tabFocusFirst when that item is removed from QGraphicsSceneMiikka Heikkinen2013-05-081-0/+18
| | | | | | | | | | If tabFocusFirst is not cleared or set to another valid item, there will be crash later if the removed item is deleted after removal. Task-number: QTBUG-30923 Change-Id: Iba9a6ce9334c52f8e552b0accda95ebb5fcfcdb1 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* QLocale: add autotest for French_Morocco localeEl Mehdi Fekari2013-05-081-0/+1
| | | | | | Change-Id: Ie489557342bf9ea571ba4070e8982b1a13fc7021 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* moc: use fprintf instead of qWarningOlivier Goffart2013-05-081-0/+5
| | | | | | | | | qWarning now depends on QT_MESSAGE_PATTERN, depending on that variable. It will show things like the moc process id or the Parser::error function name. We don't want that. Change-Id: I5b35401200f0f7de2442aa77d700a82402081489 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
* Only expect EGL libraries in the cmake files if Qt is configured to use it.Stephen Kelly2013-05-071-1/+1
| | | | | | Change-Id: Ida382a80dba882bbeb920756adc0c16321efe37e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Add qt_hash(QStringRef) overloadGiuseppe D'Angelo2013-05-071-0/+22
| | | | | | | | This enables fixing a performance regression compared to Qt 4. Also, add some qt_hash tests. Change-Id: Id830e17dec99fb67e5930c80029ac2233b2f427e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Fixed applying invalid data from QLineEdit to modelIvan Komissarov2013-05-071-0/+131
| | | | | | | | | Task-number: QTBUG-2216 Change-Id: I5d1c18aadb380667dedc2bb9f9b7e3dd8178a24c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: David Faure <david.faure@kdab.com>
* Add QSKIP to hoverenter-test in tst_qgraphicsproxywidget.Friedemann Kleint2013-05-071-0/+1
| | | | | | | Task-number: QTBUG-25294 Change-Id: I7a674dc49d84c7c68a877bcf64c14e9726dd481e Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* Fix XPASS in tst_qgraphicswidget (Windows).Friedemann Kleint2013-05-071-1/+1
| | | | | | | Task-number: QTBUG-20778 Change-Id: I90c8135fab85872cae22630c53fef7aed835a19c Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
* QProcess/Win: drain output pipes on process finishJoerg Bornemann2013-05-071-0/+34
| | | | | | | | | | | | If a process dies before all output is read into the internal buffer of QProcess, we might lose data. Therefore we must drain the output pipes like we already do in the synchronous wait functions. Task-number: QTBUG-30843 Change-Id: I8bbc5265275c9ebd33218ba600267ae87d93ed61 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Autotest: Use the new test zone in all name-lookup unit testsThiago Macieira2013-05-073-61/+107
| | | | | | | | | | I also modified tst_QDnsLookup the test to use ';' as a separator as opposed to spaces because I added MX and SRV records with multiple RRs. Change-Id: I62c7b6ad342c1bb23c4d9ac9730e35ab422e3ea2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard J. Moore <rich@kde.org>
* Add some extra tests for QString::argThiago Macieira2013-04-291-0/+22
| | | | | | | | | | Test locale-based formatting of numbers when we pass field width, base and fill characters. This now tests the fact that we replace a '0' for the locale's zero character. Change-Id: Ib872a592fd9a754e3ef11495a9497a6947056631 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* test: Mark tst_menubar::task256322_highlight as XFAILSergio Ahumada2013-04-291-1/+6
| | | | | | | | | | This test is unstable on Mac OS 10.7 with developer builds, so marking it as XFAIL if it happens to fail. Task-number: QTBUG-30565 Change-Id: If7094c3b19299f0dbe57cb82a8614032a75573d8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Get rid of this hack where QAccessible inherits from QObject.Jan Arve Saether2013-04-268-224/+24
| | | | | | | | | | | | | This was added just so that moc could pick up the enums and so that we could use the enums in Q_PROPERTY declarations, which was needed for accessibility in QML. It turns out that Q_GADGET is enough for us. This is a strictly a binary compatible change. However, QAccessible was marked internal in 5.0, so we are free to change it. In addition, this class is static and cannot be instantiated. Change-Id: I27e2e97c5f4b45c38678264c6b593a4383db8d3e Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Cleanup the SQL testsAndy Shaw2013-04-258-340/+342
| | | | | | | | | | This removes some XFAILS that were no longer correct and fixes some existing problems in the tests where ODBC is concerned. Change-Id: I91de526bb50ad4046ba07ddb5336aa3714966687 Reviewed-by: Mark Brand <mabrand@mabrand.nl> Reviewed-by: Caroline Chao <caroline.chao@digia.com>
* Do not include the treeview header if its hiddenJan Arve Saether2013-04-251-0/+6
| | | | | | | | | | | | Previously, accessibleTree->child(0) would return an interface for the header even if it was hidden. Also, the assertion was wrong since the index would be 0 if both row and column were 0. The assertion was actually found while using the project explorer of Qt Creator (2.7) Change-Id: I9f3cc2c13b6887569d10c4e062a64552f898231a Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Fix windows expose logicGunnar Sletta2013-04-251-11/+19
| | | | | | | | | | | | | | | | | | | | | | | | Make sure the value of QWindowsWindow::isExposed is in sync with regions we expose. This provoked a couple of existing issues in the qwidget test. setWindowGeometry tested that windows with invalid sizes got exposed on screen. They didn't, but because the plugin sent bogus events, these used to pass. Same with windowMoveResize. The expect fails are also rather bogus. Showing invalid-size widgets could be considered undefined behavior. The Window manager could resize it, choose to not show it at all, etc, but they now pass on windows. resizeEvent has been broken since 5.0.0, but the test didn't spin the event loop so the second event didn't get delivered before the test completed. Task-number: QTBUG-30744 Change-Id: I3a9efcd095f366126a87739f4248185b6c81d407 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Run the CMake tests with QPrinter, not QPrintDialog.Stephen Kelly2013-04-241-1/+1
| | | | | | | | QPrinter is not implemented on android, so the test fails to link there. Change-Id: I10ca0179323362a9c9f74325332043c968d67d3c Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Enable OpenGL library detection for mac.Stephen Kelly2013-04-241-5/+3
| | | | | Change-Id: If99d3faf2b08ac5109d619ff69efdaa3857c007f Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* SSL internals: do not write after shutting down the socketPeter Hartmann2013-04-231-1/+2
| | | | | | | | | ... but rather throw an error, so the HTTP layer can recover from a SSL shutdown gracefully. In case the other side sent us a shutdown, we should not send one as well, as it results in an error. Change-Id: Ie7a56cf3008b6ead912aade18dbec67846e2a87e Reviewed-by: Richard J. Moore <rich@kde.org>
* Fix retrieving of the generic system proxy via environment variablesThomas McGuire2013-04-231-0/+41
| | | | | | | | | | | | ignoreProxyFor() always returned true if the no_proxy was not set, which resulted in the first token being an empty QByteArray, causing the endsWith() check to always evaluate to true. Add a unit test that is enabled for those platforms that use the generic system proxy. Change-Id: I6081ad5e0b8e2c3fee1568835907c32bde5b7772 Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
* Remove QLocalePrivate::m_localeIDhjk2013-04-233-0/+89
| | | | | | | | | | | | | | It was only used for toUpper/toLower but always computed in the constructor, including QString::toLatin1 conversion and allocations. This needlessly slows down all other uses, including supposedly "cheap" operations QString::toDouble, or accesses inside QResourceFileEngine. The benchmarks indicates that doing it always when needed is bearable. There's still a lot of improvement potential on these code paths. Change-Id: I88b637ee11f9f7ea614f8da4ec5df0bf40664fce Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Fixed QLayout::addChildLayout(QLayout *l) when l had a parentJan Arve Saether2013-04-231-0/+21
| | | | | | | | | | | Previously if l had a parent, addChildLayout would warn and skip the reparenting, but it would still add the sub layout to the layout. This caused some inconsistencies in the hierarchy which in worst case could cause crashes. Task-number: QTBUG-30758 Change-Id: I618ec3341636b97bd71e421201b22c746dcf43e1 Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* File dialog manual test: Remove dot from default suffix.Friedemann Kleint2013-04-231-1/+1
| | | | | Change-Id: Icadfd2103bb89b5f9ea167737d9e6af05d7a6b86 Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
* Fix QAbstractItemModel::moveColumn()J-P Nurmi2013-04-231-0/+4
| | | | | | | Task-number: QTBUG-30346 Change-Id: I3d6dbe1e88bb5e2748eadabb2663f30be16f8d18 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Fix QKeySequence::toString() returning gibberish for Qt::KeypadModifierMitch Curtis2013-04-231-0/+5
| | | | | | | | | | | | | This is the patch from the bug report with a few alterations to get it to compile, and also with the GroupSwitchModifier code removed, as this patch just focuses on Qt::KeypadModifier. The problem was determined to be in QKeySequencePrivate::encodeString, which doesn't handle the Qt::KeypadModifier flag. Task-number: QTBUG-4022 Change-Id: Ic981eb8b5cd88c7b36892d3019b8175db4b7b6f2 Reviewed-by: David Faure (KDE) <faure@kde.org>
* Add IMPORTED targets for the GL libraries used by Qt.Stephen Kelly2013-04-225-0/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | There may be multiple libraries specified in the mkspec, such as EGL and Mali, as used in devices/linux-sh4-stmicro-ST7108-g++, so create an imported target for each one. Also populate the Qt5Gui_EGL_LIBS variable with all created imported targets. Similar variables are created for the used OPENGL implementation. In the case of using the packaged ANGLE library, we already know the exact locations of the binaries. This makes it possible for third parties to use the same GL implementation as used by the Qt build itself. As these are used only privately by QtGui, they are also added to the DEPENDENT_LIBRARIES of that target so that they are found for rpath-link usage. On some platforms (eg Raspberry Pi), multiple include directories must be set to include egl.h, as the headers it includes for vcos are a bit scattered. Task-number: QTBUG-29132 Change-Id: I1126da3d37cd51c88d3670347c8b6405b285efb5 Reviewed-by: Volker Krause <volker.krause@kdab.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Fix QTableView::doItemsLayout()J-P Nurmi2013-04-221-0/+34
| | | | | | | | | | | Keep the content aligned to the bottom when the view has been scrolled to the bottom and the content is relayouted (for example due to sorting). Task-number: QTBUG-30653 Change-Id: I9513e295e276d25ff2068036cd80dbf91314fe84 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* test: Disable tst_uic when -no-widgets is usedSergio Ahumada2013-04-221-0/+1
| | | | | | | | uic doesn't get compiled when -no-widgets is used, so disabling its test. Change-Id: I8c81ec468e40841548dacb356fd87ecf85d7b6ac Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Ensure the QLineEdit::returnPressed() signal is still emittedAndy Shaw2013-04-211-1/+10
| | | | | | | | | The signal needs to be emitted directly as the event is not passed to the QLineEdit if the QSpinBox gets the Key_Return. Since this signal may be relied upon then we ensure it is emitted directly. Change-Id: I17cdec62c9f995bacfd7d3cc66d6324f26c84c67 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>