summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Remove outdated assumption from QVariant autotest.Jason McDonald2012-03-121-2/+2
| | | | | | | | The test was assuming that "data()" is a special function in autotests, but that hasn't been the case since early prototypes of testlib. Change-Id: Ic24cf5dc539b55d12eba0a6ab17173e2ed698f21 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Fix compile warnings in QCoreApplication autotest.Jason McDonald2012-03-121-17/+22
| | | | | | | | | - Use const_cast to avoid "deprecated conversion from string constant to 'char*'" warning when building argv arrays from string literals. - Use Q_UNUSED to avoid warnings on unused local variables. Change-Id: Idd2c8279adc102b6ebc6af7486ba26fe9ed4e7c1 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Remove redundant and incorrect comment from QList autotest.Jason McDonald2012-03-121-6/+0
| | | | | Change-Id: I3187d0d8ace120181a4c49bbc68f421ddf5acbe0 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Add Q_IS_ENUM(), and provide as flag in QMetaType::typeFlags()Glenn Watson2012-03-112-0/+156
| | | | | | | | | | | | | | Add Q_IS_ENUM() macro to determine if a given type is an enumeration. Use information from that in QMetaType::registerType() to store whether custom registered metatypes are enums or not. This information can then be accessed by calling QMetaType::typeFlags(int type). This is used by the declarative code to determine whether a custom type in a variant can be safely cast to an integer, which is required to allow passing non-local enums as signal/slot params. Change-Id: I9733837f56af201fa3017b4a22b761437a3c0de4 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Crash fix in QMetaType::typeFlags.Jędrzej Nowacki2012-03-111-0/+6
| | | | | | | The function is public, so it should validate input instead of crashing Change-Id: Id67463b0b61ab74a76c1ede7f052bdbed37822b6 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QRegularExpression: minor fix to captureIndexForNameGiuseppe D'Angelo2012-03-082-1/+59
| | | | | | | | | | | | Although passing a null pointer to pcre16_get_stringnumber for the compiled pattern should simply make it error out, it's actually an undocumented behaviour, so let's stay safe and add an explicit check. Tests for this codepath are added. Change-Id: Ifd9c87874f6812ba487104ec1a5bbc83c3b16761 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRegularExpression: improve JIT memory handlingGiuseppe D'Angelo2012-03-082-0/+29
| | | | | | | | | | | | | | | | | PCRE's JIT uses by default 32K on the pcre_exec caller's stack. This is fine for most situations, but in some cases (esp. patterns with lot of recursion) more memory is required. Therefore, if a match execution fails due to exhausting JIT memory, we let PCRE allocate up to 512KB to be used for the JIT's stack. The pointer to the allocated memory is put in thread local storage (so it can be reused from the same thread, if needed, and automatically goes away when the thread dies). Change-Id: Ica5fb7d517068befff88ebb198a603a26ec5d8a7 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix a bug in the assignment operators for QJsonObject and ArrayLars Knoll2012-03-081-0/+33
| | | | | | | | | | When objects or arrays where being used read only, several objects can share the same d pointer, but will have different pointers into the binary data. Correctly change the pointer into the binary data even if the d-pointer is the same. Change-Id: Ife0ea5ac5daf46586f855dccdf35b51ec696a623 Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
* Crash fix in QMetaType::typeName.Jędrzej Nowacki2012-03-081-4/+8
| | | | | | | The function is public, so it should validate input instead of crashing Change-Id: Ifd9f1110f8631f942929d85db6a57eee7afffb6a Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Fix crash in QVariant::canConvert.Jędrzej Nowacki2012-03-081-0/+6
| | | | | | | | The function was crashing when an unsupported type id was given as an input argument. Change-Id: I2b0e3e6d43f6f248dc71532f8e6485efe68e8120 Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* QRegularExpression: add optimizations autotestGiuseppe D'Angelo2012-03-078-44/+213
| | | | | | | | | | | | | | | Exporting the counter that controls the optimization of a compiled pattern lets us to forcibly optimize all patterns. Therefore, two tests are now run: one with default optimization values and another one which always optimizes the pattern. The counter itself was renamed with a qt_ prefix and put inside the Qt compilation namespace (thanks to rohanpm for pointing it out). Change-Id: I56602433d37adc127772b2d0d2cdaf2e49d43c71 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix deadlock in QPropertyAnimationOlivier Goffart2012-03-071-0/+45
| | | | | | | | | | Commit 1e6514a714c1f55b9cb57d2b8b65bc2305c2e2c6 changed the mutex from recursive to non-recursive, which could introduce dead lock if the animation starts other animation (This is the case in QMainWindow layouts) Change-Id: I1b149b78a802748eb24b5700fffeca0b8555f005 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix parsing of unicode escape sequencesLars Knoll2012-03-072-0/+16
| | | | | Change-Id: I63a7cd3a571fb47c97157bcb2ca29c4239c600ba Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRegularExpression: fix autotestGiuseppe D'Angelo2012-03-071-2/+3
| | | | | | | | | | | | Some minor fixes: obviously, a valid match always come from a valid regular expression, but a valid regular expression can create an invalid match (internal error during matching). Also, testing an invalid iterator should silence the emitted warnings. Change-Id: I585bb99a81e22f108601fd66bf30b56e0229d68b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRegularExpression: add captureCount()Giuseppe D'Angelo2012-03-061-0/+31
| | | | | | | | QRegularExpression::captureCount() returns the number of capturing groups inside the regular expression pattern. Change-Id: Ib90ce67c67d06ab2966f0c98bd91da21defc156d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QRegularExpression: improve operator==, add dedicated autotestGiuseppe D'Angelo2012-03-061-5/+59
| | | | | | | | Trivial change: compare dpointers first, then the data. Added test function for operator==. Change-Id: I33ac64a59db4ccad56c30be17622187e42415f38 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* QRegularExpression: add QRegularExpression* set of classesGiuseppe D'Angelo2012-03-064-0/+1156
| | | | | | | | | | | Added QRegularExpression, QRegularExpressionMatch and QRegularExpressionMatchIterator as PCRE-enabled, regexp classes. Documentation is included, as well as a first round of autotests. Task-number: QTBUG-23489 Change-Id: Id47031b80602c913ccd2fd740070e3024ea06abc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* QMimeDatabase: Fix crash on empty filenameDavid Faure2012-03-061-0/+1
| | | | | | | | | This is due to the search in the suffix tree starting at position fileName.length() - 1. Change-Id: I98501c1724c7dde2626351ace8ba19faa0d2e1e1 Reviewed-by: Ivan Komissarov <ABBAPOH@nextmail.ru> Reviewed-by: Wolf-Michael Bolle <wolf-michael.bolle@nokia.com>
* Windows: Make QSettings autotest significant againMiikka Heikkinen2012-03-051-2/+0
| | | | | | | | | The latest windows run of CI has QSettings test passing, so remove the CONFIG += insignificant_test from it. Task-number: QTBUG-24145 Change-Id: I35c0d8d4f72ad49f9f21dcd486ab33a37ab95e15 Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
* Merge remote-tracking branch 'origin/api_changes'Lars Knoll2012-03-047-1/+295
|\ | | | | | | | | | | | | | | | | | | Conflicts: dist/changes-5.0.0 mkspecs/features/qt_module_config.prf qmake/project.cpp qmake/property.cpp Change-Id: I6e4af40743a9aeff8ed18533a48036e332acc296
| * Automatic metatype registration of two-template-argument types.Stephen Kelly2012-03-021-0/+133
| | | | | | | | | | | | | | | | | | | | | | This commit is complimentary to the commit which introduced a similar partial specialization for single template argument types: 6b4f8a68c8da1af7c5be7dc6075b688c9d6ca55f If T and U are available as metatypes, then QHash<T, U> is too. Change-Id: I09097b954666418b424c8c23577032beb814343a Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * QPair: specialise QTypeInfo based on the typeinfos of its argumentsMarc Mutz2012-03-014-0/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Specialise QTypeInfo<QPair<T1,T2>> based on the properties of T1 and T2: - If either T1 or T2 is Q_COMPLEX_TYPE, so is QPair<T1,T2>. - Otherwise, if either T1 or T2 is Q_MOVABLE_TYPE, so is QPair<T1,T2>. - Otherwise, QPair<T1,T2> is Q_PRIMITIVE_TYPE. Change-Id: I8aecbd37e3b7924f77f38967498deabf1a19ca24 Reviewed-by: Olivier Goffart <ogoffart@woboq.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| * QEvent (and subclasses): make ctors explicitMarc Mutz2012-03-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Do this regardless of whether the event subclass is public API or only used in examples. Examples are examples, used by others as templates or even copied verbatim, so they should also follow sound engineering rules. Anyway, there's only one in examples/... Change-Id: I586ff16407a956c9e89288fdd4377eed73f45c0f Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
| * QFlags: mark as Q_PRIMITIVE_TYPEMarc Mutz2012-02-291-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I originally tried to put Q_DECLARE_TYPEINFOs into Q_DECLARE_OPERATORS_FOR_FLAGS, to declare not only the flags type, but also the underlying enum as primitive, but too many users (arguably correctly) used Q_DECLARE_OPERATORS_FOR_FLAGS at (non-global) namespace scope where QTypeInfo would have been specialised in the wrong namespace. So specialise QTypeInfo for QFlags<T> only. Change-Id: I4af6e29aefbd9460a3d2bc6405f03cdf6b1096bc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * Allow QChar::SpecialCharacter with QStringBuilder.Stephen Kelly2012-02-291-0/+3
| | | | | | | | | | Change-Id: I3c91fd516bb13e5534aa6f26ee9df745c990dfb5 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Add note about failing test when using shared-mime-info < 1.0David Faure2012-03-021-0/+3
| | | | | | | | | | Change-Id: I3ba9d14d915a579b9e102114866f6c9e0344ba16 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* | Fix tst_qregexp with QStringBuilderOlivier Goffart2012-03-011-133/+133
| | | | | | | | | | | | Change-Id: I1ac2a5c9ea5657ad2916465b77271e3d53c67cde Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
* | Remove ARMFPA support and Q_DOUBLE_FORMAT detectionBradley T. Hughes2012-03-012-14/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the -armfpa option the config.tests/unix/doubleformat* detection. The places where we used QT_ARMFPA and Q_DOUBLE_FORMAT has been removed as well. Rationale: ARM FPA with GCC does not work with EABI. Qt currently does not support compiling without EABI, making ARM FPA an impossibility. It is unknown whether other compilers provide ARM FPA support with EABI. Support for ARM FPA can be re-added in the future should the need arise, but since ARM VFP is available for ARMv5 and up, we should encourage implementors to instead use soft-floats or VFP. Change-Id: I3671aba575118ae3e3e6d769759301c8f2f496f5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* | Changed qchar unittest to check return from QFINDTESTDATAKurt Korbatits2012-03-011-1/+3
| | | | | | | | | | | | | | | | - Changed qchar unittest to check string QFINDTESTDATA returns is not empty. Change-Id: Idb3997aaa5d5220272915c1e2538175205b3d6e8 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* | Fixed qlocale unittest to install subprogram syslocaleapp correctlyKurt Korbatits2012-03-012-4/+3
| | | | | | | | | | | | | | | | - It was trying to install syslocaleapp sub program as TESTDATA instead of an application. Change-Id: I2117d11335bc2fd37a8ccc9a03b0337382f0177f Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* | Changed qdir unittest remove() to check actual file removedKurt Korbatits2012-03-011-1/+2
| | | | | | | | | | | | | | - Changed remove() test to check the file just removed is gone. Change-Id: I0b6c176e624134402b5547866064f436ce063f16 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* | Changed qlogging unittest to install subprogramKurt Korbatits2012-03-011-0/+3
| | | | | | | | | | | | | | - Added install of app sub program so it works from install directory Change-Id: Ia83643519752a3cbb59d6da2aed132d683a94bee Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* | Fixed qdir unittest rename() test to skip if run as rootKurt Korbatits2012-03-011-0/+6
| | | | | | | | | | | | | | - subtest not valid if run as root so added a check and skip Change-Id: Iae993e20f272f9303a75062ef00d22b49df5e84a Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* | QRegExp: fix \i \I \c \C \p \P escape sequencesGiuseppe D'Angelo2012-03-011-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Those escape sequences have a special meaning in the XML Schema 1.1 regular expressions, but not in Perl-compatible ones. An escape sequence that has no special meaning should match the escaped character itself; this patch fixes QRegExp's behaviour in that regard (previously, it added a character class matching nothing). Change-Id: I983f923baa7c2ec19938b96353f3a205e6c06d58 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Fix tests of QMimeDatabase.Friedemann Kleint2012-02-297-65/+121
|/ | | | | | | | | | | | | | | - Use temporary directories to avoid instabilities due to remains of previous failed tests and locked directories. - Replace SRCDIR by QFINDTESTDATA(), reference only the freedesktop.org.xml contained in the Qt source tree by $$QT.corelib.sources. - Improve some error messages, test suite instructions for Windows. Change-Id: Idee8e3767ef0a8299df3bdaaac20334164878db0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: David Faure <faure@kde.org>
* Skip QLocale test on Windows, improve process handling.Friedemann Kleint2012-02-283-34/+92
| | | | | | | | | | | | | - Skip the failing windowsDefaultLocale() test. - Improve the handling of the subprocess, locate the binary in initTestCase instead of repeatedly searching it. - Make all applications console/non-app bundles. Task-number: QTBUG-24543 Change-Id: I79dfaa3320cd5698f02e74a3fe53477d4a79d4fb Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* Fix QLibrary autotest for WindowsMiikka Heikkinen2012-02-283-4/+17
| | | | | | | | | | | | The libraries were built into wrong directory in Windows. Fixed it so that the libraries are built into debug and release directories like the test executable. Also fixed QMAKE_CLEAN statement, which was using incorrect separator. Task-number: QTBUG-24151 Change-Id: Iade656af5f83ef2b79c2b9c4177df4a16b2f6821 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* moc: Only generate IndexOfMethod for signals.Olivier Goffart2012-02-281-4/+5
| | | | | | | | | | | | | | | | | | | | moc is currently generating code to convert from a pointer to member function of a slot or signal to its index. The idea was that it could be usefull for slots to have the new syntax do the same as the old one (connecting signal index to slot index). But in practice, the new syntax do not use the IndexOfMethod for slots. Also, it does not work for all the slots (no Q_PRIVATE_SLOT, no static slots) So since it is not used, and that it would take room in the binaries to generate all the code to get the index of slots, we remove it. If ever we need it, we can still add it later. Change-Id: Ia417e3e524d7915ca86433ea86c66ac2b299c81a Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
* Add SHA-224, SHA-256, SHA-384, and SHA-512 support to QCryptographicHashBradley T. Hughes2012-02-271-0/+16
| | | | | | | | | | | This adds Sha224, Sha256, Sha384, and Sha512 enum values to QCryptographicHash::Algorithm. The implementation comes from RFC 6234, http://tools.ietf.org/html/rfc6234, which is added to src/3rdparty/rfc6234. Only the headers and SHA-2 code is included in src/3rdparty/rfc6234 (the SHA1, HMAC, and HKDF code is not included). Change-Id: I85139fd118291f15efc22899a5ddd1cc83810cfb Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix QThreadstorage test.Friedemann Kleint2012-02-277-25/+62
| | | | | | | | | | | | - Create subdirectories containing profiles to avoid problems with -fast. - Use QFINDTESTDATA to locate binary. - Make it a console application, no Mac-bundle. - Add error messages to the test, give it a longer time-out and ensure sub-process is killed if it hangs. Change-Id: Ibc177b786c4bc8fdbc068a8c45f4801a41c9f660 Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
* Fix inconsistent auto test executable namesDavid Faure2012-02-271-0/+1
| | | | | | Change-Id: I3b6b5b37e32be25d1b9933395c43f6d5aa5b8810 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
* QRegExp: fix crashGiuseppe D'Angelo2012-02-271-0/+29
| | | | | | | | | | | | Fixes a crash when invoking various QRegExp methods on an object *before* doing any match. For instance fixes: QRegExp re; re.matchedLength(); // crash Task-number: QTBUG-23352 Change-Id: I9c239ff790a139c7820ef1aeced89d31320ae6b0 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* compile fix: parse under C++11Marc Mutz2012-02-241-6/+6
| | | | | | | | | See d94ab97b7741de7c73d4d203b9cca7bd150d581f for details. Change-Id: Ifc015be6575bd8f469f257d71fbbf79e07226729 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
* clean up qmake-generated projectsOswald Buddenhagen2012-02-241-4/+1
| | | | | | | | remove "header" and assignmets which are defaults or bogus, reorder some assignments. Change-Id: I67403872168c890ca3b696753ceb01c605d19be7 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Use new plugin system in plugin autotest.Friedemann Kleint2012-02-239-9/+41
| | | | | | | Fix up test use QFINDTESTDATA for shadow builds. Change-Id: I64731baa44f446ce360631ed6a638cea098d78a0 Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Add the quitlock feature to QThread.Stephen Kelly2012-02-231-0/+49
| | | | | | Change-Id: Ib44ee9739499ba4c5f0fecbef3976251ea22836d Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fixed tst_qobject signalbug silently not compiled in -fast builds.Friedemann Kleint2012-02-232-6/+8
| | | | | | | | | | | | | | | | When configuring with -fast on Windows, a directory which contains two .pro files, one SUBDIRS and one not, will have the SUBDIRS Makefile silently clobbered by the non-SUBDIRS Makefile. In practice, this may cause various subdirectories to be silently excluded from the build. Rearrange .pro files for this test to avoid triggering this bug. See also e9015b3bc8827a8276f58bdd41adcac1bcbf2137. Task-number: QTBUG-21168 Change-Id: I18fac1ac636fdc6b2aaee1b4cdfee9c4bc2a77ff Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Remove custom text codec for C strings.Robin Burchell2012-02-222-20/+14
| | | | | | | | | | This setting is extremely harmful, as code cannot know whether or not to expect it. It also made the behaviour of QString::fromAscii and ::toAscii unintuitive, and caused a lot of people to make mistakes with it. Change-Id: I2f429fa7ef93bd75bb93a7f64c56db15b7283388 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix QJson autotest on Windows.Friedemann Kleint2012-02-221-8/+11
| | | | | | | | | | | | - Fix warning: "Character represented by universal-character-name '\uFFFF' cannot be represented in the current code page (1252). - Fix character conversion - Change source file to plain ASCII, add defines for special characters. Change-Id: I8557e6ba7488f746247f0d78181f14bfb7d5aaae Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fixed tst_qlogging app silently not compiled in some -fast builds.Rohan McGovern2012-02-223-5/+5
| | | | | | | | | | | | | When configuring with -fast on Windows, a directory which contains two .pro files, one SUBDIRS and one not, will have the SUBDIRS Makefile silently clobbered by the non-SUBDIRS Makefile. In practice, this may cause various subdirectories to be silently excluded from the build. Rearrange .pro files for this test to avoid triggering this bug. Task-number: QTBUG-21168 Change-Id: Ic51941db497d7b8fb004f3c50f5ea24d90ff3114 Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>