summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib
Commit message (Collapse)AuthorAgeFilesLines
* test: Mark tst_QSettings::ctor() and ↵Sergio Ahumada2013-08-081-0/+12
| | | | | | | | | | | | | | | | tst_QSettings::rainersSyncBugOnMac(native) as XFAIL Mark some tests as expected failures on OS X 10.8 - tst_QSettings::ctor(native) - tst_QSettings::ctor(ini) - tst_QSettings::ctor(custom1) - tst_QSettings::ctor(custom2) - tst_QSettings::rainersSyncBugOnMac(native) Task-number: QTBUG-32655 Change-Id: I54928d991a8ccf300b40747feaa6fda9d124781b Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Improve tst_QFileInfo::compare() test, but mark as QEXPECT_FAIL on MacTor Arne Vestbø2013-08-071-11/+6
| | | | | | | | | As Qt still thinks that all UNIX filesystems are case sensitive, which is not the case for eg Mac, where they might be both, as well as for mounts of other filesystems. Change-Id: I07b8550685bfa17ac407c20ac991dc54df040942 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* qobject: Do not destroy slot objects inside a lockDario Freddi2013-08-071-7/+51
| | | | | | | | | This prevents deadlocks in case the destructor re-enters. (Example: a functor containing a QSharedPointer of a QObject) This also fixes a leaked slot object in disconnectHelper. Change-Id: Ia939790e3b54e64067b99540974306b4808a77f2 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Remove unused member in QEventLoop auto-testTor Arne Vestbø2013-08-061-2/+1
| | | | | | Change-Id: Icd6a09402c3cf14286f4ba1f8f4c99ac483ec1a3 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Fix tst_QFile::caseSensitivity on OS XTor Arne Vestbø2013-08-051-1/+4
| | | | | | | | By not assuming that the file system is case insensitive. OSX supports both. Change-Id: I11a4ac4cdff97b97b183dd319757a42ae14bb52d Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* tests: Enable some itemmodels tests that don't depend on Qt WidgetsSergio Ahumada2013-08-051-3/+3
| | | | | | | | Make qabstractproxymodel and qidentityproxymodel build and run even if -no-widgets is used since they don't depend on Qt Widgets. Change-Id: I48bc2f6a78812b1bf0083f76c6a4e106f4e38650 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QMimeDatabase: Fix handling of duplicate mimetype definitions (2/2).David Faure2013-08-031-1/+13
| | | | | | | | | | | | 7721c3d27c6a fixed the case where two similar definitions are in the same directory. This commit fixes the case where two similar definitions are in different directories, both in the search path (GenericDataLocation). If the file extension gives us the same mimetype twice, there's no conflict, i.e. no reason to fallback to determination from contents. Change-Id: I72c56004b6d5e88964159e53ec160ce8b06c2264 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix crashes when invoking toVariant() on empty QJsonValue objects.Friedemann Kleint2013-07-241-0/+4
| | | | | Change-Id: I51cd114e862c6fad564484e990348f324ad56ab9 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Ensure that the user codecs are listed in QTextCodec::availableCodecsThiago Macieira2013-07-211-0/+48
| | | | | | | | | Codecs registered by creating new QTextCodec instances should be listed there. Task-number: QTBUG-32500 Change-Id: I56c00e0d6bbfef55a6cbd571bcf9aa2cf333ef3a Reviewed-by: David Faure <david.faure@kdab.com>
* Expect tst_QEasingCurve::setCustomType() failing on 32 bit Ubuntu 11.10Simo Fält2013-07-202-0/+4
| | | | | | | | | Currently tst_QEasingCurve::setCustomType() is always failing on CI when ran on 32 bit 11.10 Ubuntu. Task-number: QTBUG-32432 Change-Id: Iaf346c14985f14716692fe996714b7040fb70930 Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Fix incomplete override of QIODevice::open in QProcess and QLocalSocketThiago Macieira2013-07-201-0/+20
| | | | | | | | | | | | | | | | | | | The rule for a new override is that it must still work if the old implementation is called. The catch is that any class that derives from QProcess and isn't recompiled will still have QIODevice::open in its virtual table. That is equivalent to overriding open() and calling QIODevice::open() (like the tests). In Qt 5.0, QProcess::start() called QIODevice::open directly, not the virtual open(), so there's no expectation that a user-overridden open() be called. With that in mind, simply fix QProcess::start to not call the virtual open at all. Similarly with QLocalSocket, the calls to open were always non-virtual. Task-number: QTBUG-32284 Change-Id: I88925f0ba08bc23c849658b54582744997e69a4c Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* Fix dead lock in the Qt event handlingOlivier Goffart2013-07-101-0/+28
| | | | | | | | | | | | | | | The deadlock is caused because the QEvent is destroyed while holding the event list mutex. And the QEvent may have a custom destructor that will re-enter the event handlng code. The QScopedPointer that should destroy the event must be created after the MutexUnlocker. Regression introduced by commit f9035587b98ac5dc9491e642b8ec84470ec03f0e Task-number: QTBUG-31606 Change-Id: I6b2cbc2656eacdec61b641886953f00bf5b3ff36 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* bail out early in QWinOverlappedIoNotifier::waitForNotifiedJoerg Bornemann2013-07-051-1/+0
| | | | | | | | Calling waitForNotified on an uninitialized notifier will print a warning and return false. The autotest has been adjusted. Change-Id: I85e18d6d0a8a5462e1a5d451613add941d89b5fb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* QtCore: fix the number precision in QJsonDocument.toJson() againLiang Qi2013-07-041-0/+62
| | | | | | | | | | | Need to store 17 decimal digits for binary64, IEEE 754 double formats. Autotest is included. Test cases from TC39 test suite for ECMAScript. Task-number: QTBUG-31926 Change-Id: I546398f21ea7ff5e40e89fc9de8703f628f55df9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Use case insensitive matching for hashes QFileSystemWatcher/Win.Friedemann Kleint2013-07-041-5/+16
| | | | | | | | | | | Do not lower case file names to generate hash keys since QString::toLower() converts some characters with context which the Windows file system will not. Task-number: QTBUG-31341 Change-Id: I285bfedef3c1ca9d59083229e61974dd378c72ae Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* remove wait calls in tst_QProcess::simpleStartJoerg Bornemann2013-07-021-9/+1
| | | | | | | | | Instead of calling different wait functions on different platforms, we use QTRY_COMPARE to check the process state. Change-Id: I6489cabce9e63f9c8b1036f3cccbf35b52df72e7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
* QUrl test: ensure that hostnames with bad non-IDN domains are caught tooThiago Macieira2013-07-021-1/+4
| | | | | | | | | Leading and double dots are bad, but trailing dots are fine. The ASCII part of a hostname is supposed to be LDH (letters, digits, hyphen) only, but we accept '_' (underscore) as an exception too. Change-Id: I79957ddec4da78a0e2357fe50c8687db03e1c99e Reviewed-by: David Faure (KDE) <faure@kde.org>
* Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-06-202-5/+22
|\ | | | | | | Change-Id: I94bb158562ae6b80a87b40139d7302ea7b9b9aa8
| * fix QFileSystemEngine::createDirectory race conditionv5.1.0-rc1Shawn Rutledge2013-06-141-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During a call to QDir::mkpath(), the same path could be created by another process, in which case the OS mkdir will fail with EEXIST. But the docs for mkpath() state that it's not an error if it already exists, whereas for mkdir() it is an error. So QFileSystemEngine::createDirectory should accept the EEXIST error silently if it occurs while creating the sequence of parent directories and the final leaf directory, but should fail if EEXIST happens when it was called from QDir::mkdir(), which is when the createParents parameter is false. We assume the operating system mkdir() and CreateDirectory() are atomic, so there should be no race condition in QDir::mkdir(). It's not necessary for mkpath() to call stat() at each level, only to check whether an existing entry is a directory or a file. Also added to the autotest to verify that if the path is an existing file, creating a dir with the same name will fail in either mkdir or mkpath. Task-number: QTBUG-30046 Change-Id: I926352f10654fdf3b322c8685bb85ad8b8844874 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| * Let QTemporaryDir::stressTest() run in temporary directory.Friedemann Kleint2013-06-121-4/+5
| | | | | | | | | | | | | | Task-number: QTBUG-31618 Change-Id: I60aaa4f57710816cd0e22ea9b097c7e85466fd0c Reviewed-by: David Faure (KDE) <faure@kde.org>
* | Ensure we don't repeat QTBUG-30931 in Qt5Konstantin Ritt2013-06-181-0/+14
| | | | | | | | | | | | | | | | | | | | The issue is already fixed in 5.0 but let's be nice and ensure the issue won't be reintroduced later. Task-number: QTBUG-30931 Change-Id: Ia6944acaf6e7217f8d0f1fa75d0e9977db11d892 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | Add basic conversion functions from QVariant(QJsonValue).Jędrzej Nowacki2013-06-141-0/+42
| | | | | | | | | | | | | | | | There is a mismatch how QML and C++ converts QJsonValue. This patch unifies conversions by adding QJsonValue support in QVariant::convert(). Change-Id: I8a1db3d77c517945ef48064b4b66ba03aa4f2fd0 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* | Merge "Merge remote-tracking branch 'origin/release' into stable" into ↵Frederik Gladhorn2013-06-101-67/+0
|\ \ | | | | | | | | | refs/staging/stable
| * | Merge remote-tracking branch 'origin/release' into stableFrederik Gladhorn2013-06-101-67/+0
| |\| | | | | | | | | | Change-Id: I89c251999ae2a82522b40471fd13f2e06b00ece8
| | * QEventLoop: Remove the test that checked throwing from an event handlerThiago Macieira2013-06-081-67/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Qt 5, we declared that throwing from event handlers is undefined behavior. So stop testing this. We will try our best to capture and pass along std::bad_alloc, but even that might not work, depending on compiler settings. In particular, after the upgrade to MinGW/GCC 4.8 with DW2, this test stopped working. Task-number: QTBUG-31615 Change-Id: Ibf5fb2ce0c48b983549096bf7aac434b6ed3ac2e Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | | BlackBerry: fix tst_QLocale::emptyCtor()Rafael Roquetto2013-06-102-0/+70
|/ / | | | | | | | | | | | | | | | | | | | | | | BlackBerry OS does not allow for explicitly controlling the locale through the "LANG" environment variable. Locale is controlled by the underlying PPS Service instead. Change-Id: I22154e39f81a9467ad7fdb90a042396390398b1b Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Mehdi Fekari <mfekari@blackberry.com>
* | tst_QUrl: check that prohibited characters in hostnames are not validThiago Macieira2013-06-081-0/+15
| | | | | | | | | | | | | | | | qt_nameprep is tested by tst_qurlinternal. We just need to be sure that QUrl handles them correctly. Change-Id: Ic563004870d2cf2fa7a31ce49fff7280d5ffb5f3 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | tst_qmessageauthenticationcode: Fix warning about character conversion.Friedemann Kleint2013-06-081-1/+1
| | | | | | | | | | | | | | warning C4309: 'argument' : truncation of constant value. Change-Id: I54e9b515d065c1a89bf790fb214c335e852ce5ac Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
* | tst_qjson: Fix MSVC C4293 warning about shift operation.Friedemann Kleint2013-06-081-24/+24
| | | | | | | | | | | | | | | | warning C4293: '<<' : shift count negative or too big, undefined behavior. Change-Id: I858dd08f16ea0e00f2384491fc735b7367c6925d Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* | QUrl stringprep: fix handling of U+0080: it's prohibitedThiago Macieira2013-06-081-0/+5
| | | | | | | | | | | | | | | | Edge case: a > that should have been >=. Without it, we never ran the rest of the IDN nameprepping. Change-Id: I2276d660de3a70d0c561bb18816820d9a0f47e77 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | QUrl stringprep: fix handling of prohibited charactersThiago Macieira2013-06-081-27/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RFC 3454 says about prohibited characters (section 2, "Preparation Overview"): 3) Prohibit -- Check for any characters that are not allowed in the output. If any are found, return an error. This is described in section 5. In other words, we mustn't simply strip the output of prohibited characters. We must generate an error if they are present. We do that by clearing the data. We already had tests for prohibited output, but they were indistinguishable from being stripped. So instead add some extra characters so that we can tell whether the label was cleared. Change-Id: I2d95217c27be5e2d54deed0036cb009e3b7f4886 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Unix: fix tst_QFile when run as rootRafael Roquetto2013-06-071-0/+7
|/ | | | | | | | Because tests are usually run as root on some setups, it does not make sense to test for the right permissions of a readonly file. Change-Id: I484f88722d3a9ce7123edc0fb57acae528fa194e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix parsing of long latin strings in the json parserLars Knoll2013-05-231-0/+45
| | | | | | | | | | | Latin1 strings are usually stored as 8 bit data in the json binary format. But that data structure has a size limitation of 16bit, so we need to fall back to storing the string as 16 bit data if it is too long. Task-number: QTBUG-30946 Change-Id: I0069b1367030b0b2f819fd1f04e34c9e2534a2a3 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* Fix regression when pasting into QTextEdit from Firefox.Mitch Curtis2013-05-231-0/+11
| | | | | | | | | | Return the codec if one was found by QTextCodec::codecForUtfText, instead of returning the default (UTF-8). Task-number: QTBUG-31293 Change-Id: I95e3260376c00537006b7fbfdc3df5850e1ba657 Reviewed-by: Thiago Macieira <thiago.macieira@intel.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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* 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>
* Reduce qmetatype autotest build time for Windows CE.Janne Anttila2013-04-171-2/+2
| | | | | | | | | | | | | | | | | qmetatype autotest build for WEC7 took several hours [1] See timestamps 03:51:13 and 07:44:52. The timestamped Jenkins log is only available in Digia network. The corresponding log without timestamps is available from [2]. Use same workaround for all Windows CE / WEC7 builds as currently used for desktop MSVC2012. [1]: http://qt-ci.digia.com/job/QtBase_stable_Integration/cfg=wince70embedded-armv4i-msvc2008_Windows_7/940/consoleFull [2]: http://testresults.qt-project.org/ci/QtBase_stable_Integration/build_00940/ Change-Id: Ia21be8972d82c8d37073c9097b8d4094261e4126 Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Fix tst_qfile build for WEC7.Janne Anttila2013-04-171-1/+3
| | | | | | | | | Windows Embedded Compact does not have drive letters like desktop Windows => do not try to build drive letter related test code for WEC7. Change-Id: I2c3659220a001510c0555e2dd773b4dd68e9c2cc Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Make QBuffer::bytesAvailable() workThiago Macieira2013-04-161-1/+22
| | | | | | | | | | | | | We don't need to keep an internal QBuffer position, we can just use the one from QIODevice::pos(). It will keep track of goings ahead and backwards for us, plus it will make the default bytesAvailable() work out-of-the-box too. This error was reported on IRC. Change-Id: I8559e8ee56edaa01ca8732c1f1012082ebe3a3f2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* QDateTime - Fix auto tests on Windows before 1980unknown2013-04-121-0/+15
| | | | | | | | | | | Auto tests using CET expect there to be no Daylight Time before 1980, but Windows does apply Daylight Time. Fix expected test results to match. Task-number: QTBUG-30420 Change-Id: I7080598fa0a20c1cd5680782606ab983e714e546 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* tst_qtranslator: Remove QT_DISABLE_DEPRECATED_BEFORE=0Debao Zhang2013-04-122-9/+6
| | | | | Change-Id: Iefd8ce56b7102b5a6a656df7dbea2cd344bb9b5d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* tst_qcoreapplication: Remove QT_DISABLE_DEPRECATED_BEFORE=0Debao Zhang2013-04-122-2/+1
| | | | | Change-Id: I6d5098ff57293171b5ddd3a58c53718cbbc8e4bf Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>