Note that the uiloader test has been moved
from qtbase to qttools (see QTBUG-19453).
Change-Id: I326fa0da435701eeaad7026160e3203a27cb3666
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
The qtipc autotest needs to live in qtscript due to dependencies
to that module. This commit is the first of two steps to move qtipc.
The second step is a commit in qtscript that adds qtipc there
(with a proper reference to the first commit, i.e. this one).
Change-Id: I233ee459be76fd1938868c05232ce732cfc913a8
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qopengl test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: Ifa9ccab81efb1577767465c150fc64a9d9e3f8e0
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
That was strange that QPolygon was know to QMetaType class but QPolygonF
not.
Change-Id: I67bb99644b8b1d0fe1aec730619d8048cb78219b
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Each QVariant instance has internal storage which may be
used for well-know basic types. This patch changes the
behavior by delegating type dependent operation to QMetaType
class which knows more types than QVariant itself.
The patch significantly reduce amount of code in QVariant
implementation.
There are few side effects of this patch:
- better performance:
* for Core types when using Gui (QGuiVariant is able to
construct Core types)
* for small custom types (QVariant::Private::Data is used for all
types that has size small enough)
- comparing two QVariants can give different result for small custom
types (binary comparison instead of pointer comparison)
Change-Id: Ic17fa500d6a882110bfba896fd456c8e6c7a63a9
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
QMetaType::Type enum is the main source of type ids. Currently
there are many tasks that can be replaced by a smart macro that
can iterate over all types. The patch introduces series of FOR_EACH_
macros that may be used for code generation.
As the first step the macro was used for Q_DECLARE_BUILTIN_METATYPE
to make sure that no type was forgotten.
Second step was to use created macros in autotest to improve tests
coverage.
Change-Id: I34e9ad7bacf02b44b028bc1aad20b1241aacebd3
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
QTRY_COMPARE is now part of qtestlib, so there's no need for copies of
it.
Change-Id: Ied4e7d3b30c1cf16ddcbf8655e4d976e74c2bd8a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Currently, qInstallMsgHandler() does not return the
handle to the default message handler. This patch defines
a default message handler. This is returned by
qInstallMsgHandler() when called for the first time. A call
to qInstallMsgHandler(0) will restore the default message
handler as was the case previously.
Change-Id: I42f06654d45fb0e633f3c6d912fc8f05c23249aa
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Two problems:
- The signal cacheCredidentials was not connected in the synchronous
case while it must be connected. (Regression when the threaded http
was merged)
- We cannot cache the credidentials when we proceed the url because
at that point, we do not know the realm (this basically reverts
9bc5a32b875b812c3a706034c8c27614f86bd138)
Task-number: QTBUG-18411
Change-Id: I8ea11fa23db4314c3f17ed06d2d7f9ee934ccdba
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Apply the same solution to QFileInfo (no public detach(), but a
non-inline d_func instead).
Change-Id: I31c4c759f44a0649b97f7884b078b174c9c00f22
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
The initial change to eliminate v8.pro was
incomplete - see 803b7d651c.
Change-Id: Ia2c996d247f8b19380363f3e0409d38d3b839fdb
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
This change moves utf8/ into corelib, thus
allowing corelib.pro to be deleted.
Change-Id: Ib1b4e0930ac0e116d9bbc242a6dfb63ae5785d19
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Commit 0fd8514a57 ensured that
the showAsTool test function is now properly QSKIP'ed for
platforms where it is always known to fail.
This change re-enables the test case as a whole so that
the passing test function may actually catch real Qt bugs again
(without being ignored by CI).
Task-number: QTBUG-22453
Change-Id: Icfe56558f8c0f4b50dbbc21d9748df6d81fea4fe
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
QWS is not supported for Qt 5, so the QWS tests are deleted.
Change-Id: I08837fbd879915bbca9f821fad3551450eb3a1c6
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
The previous fix a05270f435 is not correct,
QPainterPathPrivate(other) should be QPainterPathPrivate(), as there
is only a default ctor for QPainterPathPrivate and ref is initialized there,
use copy ctor just copies the ref value which makes all detach() calls broken.
Add an unit test for this as well.
Change-Id: I658f0a977664d5ec523af3f8a48c1a866eda6ab0
Reviewed-by: Martin Jones <martin.jones@nokia.com>
The qobjectperformance test is a kind
of performance test that asserts that the
time it takes to emit a signal to a certain
number of receivers does not exceed a certain
time.
other/ currently seems to be a sensible place for
such a test. Alternatively, it could have been put
next to corelib/kernel/qobject/.
Change-Id: I5c9461b62984f5806d1f6940123d30ef9f9f5a37
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
v8 may be specified directly as a subdirectory in
tests/auto/auto.pro instead of indirecly referring to v8.pro.
Change-Id: I95d8c788fa67958372795519036cd8aec835b324
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qmenu test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: I62cc1a2a9b0206595808deafb5fc137888ec97b3
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qinputcontext test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: Ib1d4946ab29e67e0e72f4f9c6a7bf39b65d0f6be
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qprinter test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: I74cc30dc26b8b83852b3516f8def995eab19cf0f
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Added tests for each of the supported extensions, and also for the
handling of unknown ones.
Change-Id: I29e0a5c1a411f41c2a554293662a33b56f205c00
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Tentative commit string allows input method to notify editor
what is expected to be committed in the place of preedit.
This commit adds such support in QLineEdit.
Change-Id: If855619bc6843652db0d6254f7e7063bb8ad0936
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
This commit moves the qmetaobjectbuilder test from test/auto/
into corelib/kernel/ since that matches the location in the Qt source.
Change-Id: I0342e8185ce775b0ef71849f365bf54c8fb56da4
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
These functions are no longer used anywhere in qtbase and are highly
unlikely to be used elsewhere.
Change-Id: I8e7c433c3b3e799ce0e5bc465182a5046275eb00
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The qobjectrace test seems to belong to
integrationtests/ since it tests the interaction
between QObject and QThread (much in the same way
integrationtests/qsharedpointer_and_qwidget/ tests the
interaction between QSharedPointer and QWidget).
Change-Id: I89f1dab7300c2ef23755d52a86479677ef021ef1
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
This commit moves tests from test/auto/ into more appropriate
locations (i.e. matching the locations in the Qt source):
- qscreen and qwindow are moved into gui/kernel/
- qopengl is moved into gui/qopengl/
Note: qscreen is disabled for now since it is broken
on Linux (see QTBUG-22554).
Change-Id: Idcc7a51e78d6d0955bddb9cb4091866659193cc8
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
(Note: This feature is ported from Qt 4.8.
See the following commits:
01575deafb7d26ca2431374e92c6d71de96547c7
4866d1ba8afbab61e102942d1ea93b81fea053d6
)
Passing the -datatags option to a QTestLib program prints the
available data tags to standard output.
For completeness, the test case name is also printed
at the start of each output line. (Although the file name
is supposed to match the lower-case version of the test case
name, this is currently not true in all cases (particularly not
under tests/benchmarks/). Even if there was a script to enforce this
convention, the -datatags option provides this information in a
reliable way.)
Data tags for each test function (f() in this case) are printed in
four different ways depending on the presence of local and global
data tags:
Case 1: No tags:
tst_MyTestCasetst_MyTestCase f
Case 2: Local tags only:
tst_MyTestCase f local tag 1
tst_MyTestCase f local tag 2
...
Case 3: Global tags only:
tst_MyTestCase f __global__ global tag 1
tst_MyTestCase f __global__ global tag 2
...
Case 4: Local and global tags:
tst_MyTestCase f local tag 1 __global__ global tag 1
tst_MyTestCase f local tag 2 __global__ global tag 1
...
tst_MyTestCase f local tag 1 __global__ global tag 2
tst_MyTestCase f local tag 2 __global__ global tag 2
...
...
Note that the string __global__ is assumed to be highly unlikely to occur
in a data tag (if it does, an ambiguity results).
Change-Id: Ib51aa0c3c32ad52e52ce519729292cf8f0ec5d50
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qvariant test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: Ibf0dc3caf50d34084fa50cf76d199e77a42f6e16
Reviewed-by: Olivier Goffart <ogoffart@kde.org>
Removing warnings from the test function as QPixmap::grabWidget()
is being deprecated.
Change-Id: I26ad1e9def0bebe8e4ee997068ba593245d0cd05
Reviewed-by: Jo Asplin <jo.asplin@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Only properly implemented on unix (XDG), falls back to Document location
on Mac and Windows, because not easily available with the current API
being used by either one.
Change-Id: Id269f0e3c4e3a68e19205de96c0b39980fde80ff
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
tst_QDBusPendingCall::watcher_waitForFinished_threaded()
autotest was fixed by faa6113c41
Task-number: QTBUG-20859
Change-Id: I05aaebfde45862836b10700aa7d9c64e4287466f
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
The PlatformQuirks header is, by its author's own admission, based on
"very bad assumptions", those being that only Meego has quirks.
The assumption that only Meego has versions of libjpeg and libpng with
rounding errors is not a good assumption. Change the test to be a
little tolerant of rounding error regardless of the platform, at least
until there's a reliable way to tell which libjpeg/libpng versions have
rounding errors.
Change-Id: Id2be5cc54739249b615bf3307ee1850c0a5c06b3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
When moving cursors, non-stop positions are skipped, however certain
input sequences can still lead us there. In such cases we should
simply ignore those positions in cursorToX.
Task-number: QTBUG-7076
Change-Id: Ia0a25931f4043359f72a6c0c14a74b905e40b93e
Reviewed-by: Eskil
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qlistview test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: I029be60c16cdff5ee3e38889d2780f1ee7d01b51
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
- Do not mix QStringLiteral and Q_TR_NOOP.
- Replace static QString member variables by
- static member functions to return the strings.
- Use tr() since QAccessibleActionInterface declares it.
Acked-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Change-Id: Iabbee8ef61a5d7bfd35978a3f1cce1866329d065
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
This unstable test is preventing some good changes from being
merged. Further investigation needs to follow, so people can
refer to QTBUG-22544 for a real fix.
Change-Id: I038e5f340ccd2562d0e67428af595a2bcfc8c11d
Reviewed-by: Olivier Goffart <ogoffart@kde.org>
QThread::finished() is emitted before setting the thread's state to
finished and !running, which means it's possible to receive the
finished() signal and act on it while QThread::isRunning() still
returns true.
This test randomly fails due to this race. Fix it by using checking
the return value of QThread::wait() instead.
Change-Id: Ibf347fc9a2e8d32b328227ee6978e1129dd781f4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
and isRunning() should return false.
This restore the Qt 4.7 behaviour
In Qt 4.7, the finished() was called with the thread's intenal mutex
locked. Which mean that:
- Call to isRunning or isFinished called from a slot connected to
finish within the thread would deadlock. (Hence no compatibility
to keep here)
- Call to isRunning or isFinished from a slot connected with
QueuedConnection in another thread would lock the mutex until
the destructors are finished. and then return as if the thread have
finished.
Change-Id: I963eccae8f7634aff90cc4bbab6ca886a78e35eb
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
The unreadable() test function has been disabled since before the tests
were imported into the Qt repository. The idea of the test seems valid
(though the original implementation failed to correctly create an
unreadable file), so it should be re-enabled.
Change-Id: I94634bc5785dfbfbb42ca975badaead7fe812b29
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
qt_format_text_clip() and qt_format_text_boundingrect() have been
skipped ever since they were originally added to git, so I see no point
in keeping them.
The #if 0 in setEqualClipRegionAndPath() was ifdefed out from when that
specific test case was added (maybe it was failing to begin with?), but
it passes now, so we should enable it.
Change-Id: I6551e3b5612a4d4b00a969511af6abc85db43892
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qgraphicsitem test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: If311bc61801d2a279c274928ae7f0faeb595eeb3
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qgraphicsview test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: I6b8eb09000ece789b990a2dd697cdb8b47cc8e1c
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
To increase the effective test coverage, this patch
re-enables the tst_qgraphicsscene test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: Idd229532787ce8138d8e1c86daf1f91b90e87e38
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
This commit moves qsslsocket_onDemandCertificates_member and
qsslsocket_onDemandCertificates_static from tests/auto/ to
tests/auto/network/ssl/.
Change-Id: I1593e113016ce7bb7dffbee82f1196275784d0ac
Reviewed-by: Holger Ihrig <holger.ihrig@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
This test function has been disabled since before the tests were
imported into the Qt repository in 2006, but seems to pass today, at
least on Linux.
Change-Id: I8ff90a11a0fbb260d66b20ae735b5f21c450a5af
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed test data has been disabled since before the tests were
added to the Qt repository in June 2006, and was incomplete (the
"pattern" field was missing).
Change-Id: I974d03a4dcca76ba1a20f740372702612c8ce02b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was already disabled when first committed in January
2009.
Change-Id: I00a82f2e673fee76869cc76d756c36d081da2d2a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was already disabled when it was first added in June
2006, and is based on assumptions that no longer hold true.
Change-Id: Id7941d46e2a993aac422554dcc5540eb64eac492
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed test data was for obex URLs, which are not supported by
QUrl.
Change-Id: I166130ae936342d415165e46b7943d198de8986b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Remove a couple of "#if 1" directives (but not their contents), which
have been present since before the tests were imported into the Qt
repository in 2006.
Change-Id: Id43aff37843e7a44ed96973f809de3838ba0e5b9
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Remove some "#if 1" directives and a line of debug code.
Change-Id: Ib34f5b65470a24ee499799525ffe0645ccc117fe
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed functions have been unsued since at least as far back as
2006.
Change-Id: Id1ea77dbfffa319c18891968f3aa378cfb563fd4
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code had been disabled since 2007 and tested functionality
that was no longer supported.
Change-Id: I49dfe58601c1cc6d41590ab2980daba27eca6bfb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The tested functionality hasn't been in the public API since 2008.
Change-Id: I2898da3730fa6248eea2e19779b33ccc793b7a31
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was disabled in January 2007. The commit history does
not make clear what the code was supposed to achieve and the code
doesn't do what the comment at the top says (that looks like a TODO).
Best to delete it and start again.
Change-Id: I42b6b1d865c96518d74dc189a4a41d0d2776e5bc
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Variadic macros are not supported by C++98 standard.
Change-Id: Ib520297e43b654b46925f3ee2735a975ebbe8e35
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
To increase the effective test coverage, this patch
re-enables the tst_qgraphicswidget test case as such, and
instead disables only the test functions that are currently
failing in CI.
Task-number: QTBUG-22453
Change-Id: Ic484fde3492f077453f47a959dd6dc862288dcaf
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Soon, QVariant will use more internal storage. It is important
that it still work with not movable types
Also, check with type that are movable but cannot be copyed
without their copy constructor to be called such as QSharedDataPointer
Change-Id: I6d67755476e4822468599bebfa8774ad96a15306
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: I80691b274d9d2abda72bca894ace9de545410ed8
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
There are two cases where a QCOMPARE may fail on some platforms. Rather
than disabling the QCOMPAREs with "#if 0", use QEXPECT_FAIL so that we
can look in the CI logs to see which platforms fail.
Change-Id: Ife93c8032e01a04e8068bf213e2040778c12f711
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: Id4efb74a2d3646f3554b643762beefba113c3602
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: Ifd2bbd17677e16ddb0f1846287d722cdae76d984
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The commit that disabled this test a few days after it was originally
comitted (bda80c4b in the grafted history) makes it clear that this
test was never valid.
Change-Id: Ib0090fc35d0b9251d7b7367de2c71a66a332c567
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Originally this commit was just going to reinstate the disabled line of
test data (after correcting it to use keyboard modifiers instead of
invalid bitwise-or of key-codes, which would trigger an assert in
qtestlib). Unfortunately, this revealed a minor bug in QMenu, as
reported in QTBUG-22449, so a QEXPECT_FAIL has also been added.
Change-Id: I29699fcbfa353c037a83379a6140f0e3da5be027
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The test for keyboard navigation was only checking correct highlighting
when a menu item was not activated by the latest key-click. It should
also check that no item is highlighted after an item is activated.
Change-Id: I443e154be5cdc2def4f12d3f0abab2cc1bc6e4a8
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This should be API-compatible with Qt 4, but is not ABI-compatible, due to
removing the enum from QUdpSocket.
Task-number: QTBUG-121
Change-Id: I967968c6cb6f96d3ab1d6300eadd5bde6154b300
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Allow passing of null windows or widgets to keyClick().
In that case route the event through the normal Qt event
processing. This allows e.g. shortcuts to catch the
key event.
Change-Id: Ic9455ea9be5164918b1c0bccbd58dd32eae74ff1
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
The removed code has been disabled since it was first added in October
2006.
Change-Id: I10243aa2979fd1615c919ec522d10d77d6527b3b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed test was disabled in February 2007 because it did not work
cross-platform. The comment that was added at the time claims that the
functionality is covered thoroughly by other tests, but even if that
isn't true we're not losing anything by removing this test as it is not
even useful as a starting-point for a new test due to its reliance on
random test data.
Change-Id: Ica74262082184908d02595702486803d1efff4d2
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed test data was disabled by commit 83747a82 and should have
been removed at that time.
Change-Id: Ia2cef0bf4394a5b95fdf37db26369e733c7e86ec
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code used to test API that was removed in the graphicsview
refactor that was done for Qt 4.5.1.
Change-Id: I3b312b9e51114e24c6ef1191353c35688b229d99
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was disabled before the tests were imported into the Qt
repository in 2006, so its meaning or usefulness is lost in the mists of
time.
Change-Id: I3108a1a1d86cd135886608f47dcd88bf49f2d3fd
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was disabled before the tests were imported into the Qt
repository in 2006, so its meaning or usefulness is lost in the mists of
time.
Change-Id: Iccdf5638106b054f02ed73790f7acda1b17b045b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QUnicodeTables::ligature() was removed from the API in 2006. The
commit that disabled the test also changed the code to call
QChar::ligature(), which has never existed.
Change-Id: I056c17c178a527b076538fb007404ff0b735ba02
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This was originaly the only test function in this test, and should have
been deleted when it was replaced by the other test functions.
Change-Id: Idc71a5462fd4d19955f9b14389b877be16c62ab5
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The documentation of QIODevice::pos() states: "For sequential devices or
closed devices, where there is no concept of a "current position", 0 is
returned". The test had a disabled check for a position of -1 before
the device is opened. Make the test agree with the documentation.
Change-Id: Ide5729bfc825cdb84caf4851574a57d3ef42ccb2
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: I201ba754df26ffc30997bead8b822f97913db2b6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Some tests were copied in from KDE's KURL sometime prior to Qt's tests
being added to the Qt repository in June 2006. This was presumably
done with the intention of making the tests work for QUrl, but that
never happened and the copied tests have never been enabled.
This commit removes the copied material.
Change-Id: Ic35526f0018900bd60d7905646b24c62317b5e47
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code refers to WhileIteration, which does not exist.
Change-Id: I4c44bc319ac776d16ce9ba7b5c2938ce1642a3f6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was left over from an unfinished MSVC6 compatibility
API (see commit e3e28e7a in the grafted history). That compiler is
no longer supported, so this code can be retired.
Change-Id: I81bcfa771ae13579f2458eb2d3ebf41c6af8577c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: Ie44b6ea8dd496857ea264f730148d3dc4f5c8324
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Remove the operator_star_qrect() test function. The body of this test
function has been inside "#if 0" since the commit that created the test
in 2006 and the operator it is trying to test doesn't exist. Seems fair
to assume that this function isn't worth keeping.
Change-Id: I9748273b28eae4b07c3a25f77cee412ad94ea822
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: Ic7fb619081e9ff453769f4064431dc726e90b985
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Any test diagnostics that are useful should be part of the regular test
output, as the CI system cannot switch on commented-out code when there
is a test failure.
Change-Id: I36c0624cccf70853a697a2395259b387fa334134
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed code was in #if 0 in the original commit of the test
function and appears to be an earlier version that should have been
discarded before the initial commit.
Change-Id: I91f16aa7adcccb50f4f3a02062fb9d105d85000c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
tst_LargeFile currently seems to pass in a stable way in CI
It does have an issue on 64-bit Linux (see QTBUG-21175), so
that test function is still disabled (QEXPECT_FAIL'ed) on that platform.
Change-Id: I818046f84f2db5eb2155ae1f51f69581029bfaee
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
This is dead code, unused with QPA in place, so remove it to avoid confusion
caused through grepping for class names existing in both old and new places.
Mac code is left in place for now, as some of it is still in use.
Change-Id: Ia82cd5bbabe71285ca997f79d8fd9c0504e32c28
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
The relativeLinks() test function was not performing sufficient
verification steps and thus hid a regression.
Task-number: QTBUG-22416
Change-Id: I2db4d4035e7a32f3c84630c7a15408d31d85ac9e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This file seems to have been forgotten when the test it belongs to got
moved -- probably because the test was poorly written and still passed
when the file couldn't be opened. The file is supposed to live one
directory up from the qtextbrowser test so that it can be used to test
opening url's with relative paths.
Change-Id: Id80965b1c73b37de75691ae3a18f909f9c6d799a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
In Qt5, it's quite safe to assume that QT_VERSION is greater than 4.x.
Change-Id: I2b7f491d79e084f3a52ee54c9e97419570b57584
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Pull in recent changes in the 4.8 branch for the QMutex benchmark.
Change-Id: Ie1e9bff33cecafb36d3d12207100f09f99597f8e
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
* QDataStream format documented
* Added Unit test for QDataStream operators
* Updated Unit test
Change-Id: Idbcfcb0b927e6369e8d31b57693c7aa0d1a154e7
Reviewed-by: Olivier Goffart <ogoffart@kde.org>
If we find out at run-time that an entire test program is not
applicable, the correct way to skip the test is by calling QSKIP from
the test's initTestCase() method.
Change-Id: Iaf1dbcce38c569ee9513bf37232e9e4ea287d872
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Qt has compile-time defines for determining the presence of each style
in the build. Use these to exclude inapplicable test data instead of
including all test data and then being unable to distinguish the absence
of a style from regressions in QStyleFactory.
Change-Id: Iab1756aec80892a8b587bb635779537c64b1d4dd
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Compile without -qpa.
- Make Q_WS_QPA-#ifdefed sections the default in the code
- Replace some Q_WS_ by Q_OS_
- Add ### fixme for places that need checking
- Remove qpa conditionals from .pro files.
Change-Id: I6ea930afc0c236cc12a7b7e95f1b8a1c24b3a513
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
If an autotest's initTestCase() method fails or skips, the remaining
test functions are not executed. Thus the QSKIP in the run() test
function was unreachable.
Change-Id: If1f1b484958367236357f9445491bed50bee2239
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Qt5 doesn't support MSVC versions before 2008, so workarounds for
earlier versions are no longer required.
Change-Id: I429feff99fe61d286637b960d92fd58962f8aefa
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
If qputenv fails, the test should fail rather than skip, particularly as
the test is supposed to be testing qputenv.
Change-Id: Iabe13d360cabaeffda46fab19f1dd0d4ed8e1eee
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
There were only two ways the QSKIP could be called: (1) the C++ runtime
is broken, or (2) the earlier call to resize the string failed.
In both cases there should be a hard test failure. In the former case, a
broken C++ runtime calls all of the test results into question. In the
latter case, the QByteArray::resize() method has suffered a regression.
Change-Id: I5adf942d2eb4d746d2ab31e98571c5d9bdd40890
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The bug referenced in the QSKIP has been marked as resolved, so this
QSKIP should no longer be needed.
Change-Id: I41dd964827a3df8fb5ebb9674cef9db59c03d432
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Fix typos I was able to find in `tests/auto' directory.
Change-Id: Id0bfcc18301381ac8b1ca8d5af17bd926e5913d4
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
This commit re-enables tests that are assumed to be ok by now, since they:
- Have been passing in CI for a long time recently (more precisely, not failed once in pulse run range 730-829).
- Did not have any known issues associated with them.
Note that not all of these tests were disabled as a result of QTBUG-21402.
Task-number: QTBUG-21402
Change-Id: I80bbf8b351bd9165aa968e98f4dc17e8be6bc7c3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Returning text "1.00" instead of "1" sounds right to me.
Checking the test before the widget is shown/validated sounds pointless.
Change-Id: Ifc9e51dc9448a5bb3afbd566fe10524fbabc654f
Reviewed-by: Kristoffer Flottorp <kristoffer.flottorp@nokia.com>
The qrc tests need further investigation.
Bring at least back the basic test.
Change-Id: I302a37b6c989af76db67716ffcf10a0960234156
Reviewed-by: Kristoffer Flottorp <kristoffer.flottorp@nokia.com>
Due to clearAccessCache being made part of the public API in Qt5,
this autotest can be run on normal Qt builds again
Task-number: QTBUG-17312
Change-Id: I3b70237a28ed141ffb49762cc40c8a528f9be6a8
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
Fix QtSQL aoto test server addresses. New servers are located in
Brisbane. Old Oslo test servers shall not be used anymore.
Change-Id: Icd4ae4c0193f71410d572bfa014272e1e77586c0
Reviewed-by: Trust Me
Reviewed-by: Honglei Zhang <honglei.zhang@nokia.com>
qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4.
It enables various crufty undocumented magic, of dubious value.
Stop using it, and explicitly enable the things from it which we want.
Change-Id: I02fe27b2c1800f929250fa8694ca2976c9661a12
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4.
It enables various crufty undocumented magic, of dubious value.
Stop using it, and explicitly enable the things from it which we want.
Change-Id: I3c1d993d5682db913aadc267d98a638061f393d6
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4.
It enables various crufty undocumented magic, of dubious value.
Stop using it, and explicitly enable the things from it which we want.
Change-Id: I48ab0ee64d8348cada2e6c7b27c67b6bbc36280d
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
If the test decides not to do some extra testing for certain styles, but
doesn't find any failures in what it has done so far, it should pass
rather than skipping. Removing the QSKIPs also corrects the leakage of
the memory pointed to by "widget".
Change-Id: Ibd0f3f0605660c92e9bab2a3d1d9f31b52192575
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
If the test decides not to do some extra testing for certain styles, but
doesn't find any failures in what it has done so far, it should pass
rather than skipping. Removing the QSKIPs also corrects the leakage of
the memory pointed to by "widget".
Change-Id: Id4cf7e8dc48f836d2c6dcde57dde87797a2fe036
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Several test functions use IPv6 reverse lookups, which evidently don't
work on HPUX 11i, but only one of these tests was skipped on that
platform and the others presumably fail.
This commit also removes the commented-out test data and makes it easier
to put some useful test data back. QTBUG-22287 records the fact that no
real IPv6 hostnames are currently used in the reverseLookup test.
Change-Id: Iff1ed1b725492bcc28ca4cb5f8e2dc106887c0b4
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4.
It enables various crufty undocumented magic, of dubious value.
Stop using it, and explicitly enable the things from it which we want.
Change-Id: I97046aa51f1b3fc100e2eb2fa115f1bf8ae6437d
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4.
It enables various crufty undocumented magic, of dubious value.
Stop using it, and explicitly enable the things from it which we want.
Change-Id: I7c1ffe9c8c294dbdc988e1582e580b1ed3f4593e
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
These macros should only be called inside a test function, otherwise
they cannot abort the test function correctly. Solve this by making the
helper function return a boolean result (and output a warning on
failure to help with debugging) and verify the return value in each test
function that calls the helper.
Change-Id: I599673fda49051baf80a8c94b5d85a4d8c2cb406
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The standard IPv4 loopback address is 127.0.0.1, however anything in
the 127.0.0.0/8 range is also a loopback address.
isLoopback returns true for any address that is in the IPv4 loopback
address range, or is the single IPv6 loopback address ::1
Task-number: QTBUG-22246
Change-Id: Ic39100e2e97a52db700e01b109998a1cfd4335e3
Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
Add new cases for custom types and QStringList.
Change-Id: I79f8d415be43774e6b2488e8a6a8028bf4a5fd45
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Moving three benchmark tests from 'tests/auto' to 'tests/benchmarks'.
Also removing 'qttest_p4' usage while we are at it.
- void asScrollingList();
- void cacheBenchmark();
- void contiguousCacheBenchmark();
were moved to 'tests/benchmarks/corelib/tools/qcontiguouscache'
Task-number: QTQAINFRA-353
Change-Id: Icbdd852f9c14c3df042d2e19abd42af6c645a3cb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
`make check' is intended primarily for running functional tests.
For the most part, it does not make sense to run benchmarks in the same
test environment as the functional tests.
Change-Id: I33b2cf1e833fc6b1d0b3525018945148ba2d3492
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Using relative paths in #include is best avoided.
Change-Id: Iacaab7b4c402dfc96f944f21c634afa6e4a2a32a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The queries were limited to current block, because that is the
available surrounding text. Input method side, however, cannot then
distinguish between anchor being really at start or end of the
surrounding text, or beyond it. Without the limitation there at least
is a way to know anchor is at unknown territory.
Change-Id: I388d33566388344ec816ea7d86662b7e36a3d7d0
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
Moving benchmark test from 'tests/auto' to 'tests/benchmarks'.
Also removing 'qttest_p4' usage while we are at it.
- void benchmark();
was moved to 'tests/benchmarks/sql/kernel/qsqlquery'
Task-number: QTQAINFRA-353
Change-Id: I241bb1a2fba1c1b5524c21e5941a6c5daf5a4a89
Reviewed-by: Honglei Zhang <honglei.zhang@nokia.com>
Which required porting the related unittests to qstandardpaths
Change-Id: I6eb63c46845f05cd29cc42b59872707526277c90
Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
With this change, the file template is always processed in original
QString format. Trying to generate native paths before adding a missing
placeholder mask could change the meaning of templates, such as "." and
"..", which are now tested to mean "..XXXXXX" and "...XXXXXX",
respectively.
After ensuring the template includes a placeholder mask, the path is
converted to a native *absolute* file path and the mask is sought for
again. On Windows, native paths were already absolute. On Symbian, we'd
need at least a clean path, as "." and ",," are not natively understood.
There is a requirement that the placeholder mask /XXXXXX+/ makes it
through this conversion unaltered, which relaxes prior requirements on
*nix platforms. On Windows and Symbian the conversion is under Qt's
control and not user-configurable.
Reviewed-by: Shane Kearns
(cherry picked from commit 401722ef9e6fe79bd41f9d5f79668f5c4997c8e6)
Conflicts:
tests/auto/qtemporaryfile/tst_qtemporaryfile.cpp
Change-Id: Iac823881c865adf0931dc4f429c6c1ef135eeb56
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Besides generating a unique name, createFileFromTemplate now also
acquires a file handle on all platforms. The file engine's native handle
is passed by reference and modified in place.
This fixes a long standing security issue on Windows.
On Windows and Symbian platforms we directly use the "native" file path
when processing the template and generating the unique name. Since the
native encoding is known, conversions at this point are safe.
Errors other than "file exists" are propagated to Q(Temporary)File,
and result in a failure in open(). The changes also unify error handling
and should give consistent behaviour across all platforms.
Worthy of note, there's a change in behaviour on Windows and Symbian:
fileNames returned by QTemporaryFile on Windows and Symbian are always
absolute after open has been called. This has to do with how
QFileSystemEntry::nativeFilePath works on these platforms. (Test was
updated to reflect change in behaviour.)
Reviewed-by: Gareth Stockwell
Reviewed-by: Shane Kearns
(cherry picked from commit ff9b69838ec146aeb43d4af8a03043f9c5f0454d)
Conflicts:
tests/auto/qtemporaryfile/tst_qtemporaryfile.cpp
Change-Id: Ibc9affb321ea4f4b193efc1f7336c9770b43d8df
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
The previous commit removed SkipMode from the testlib APi. This commit
removes the parameter from all calls to QSKIP.
Task-number: QTBUG-21851, QTBUG-21652
Change-Id: I21c0ee6731c1bc6ac6d962590d9b31d7459dfbc5
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
When the SkipAll mode is used, tests only report a SKIP for the first
line of test data and subsequent lines are not reported at all. This
behaviour makes it impossible for anything post-processing test results
to accurately report test pass- and run- rates because they cannot see
how many lines of test data were skipped.
This commit removes SkipMode. QSKIPs in regular test functions and data
functions are treated the same as SkipSingle, so that every skipped line
of local or global test data is reported in the test log. QSKIPs
elsewhere are treated the same as SkipAll -- skipping in init() causes
the next test function to be skipped entirely, and skipping in
initTestCase() or initTestCase_data() causes all test functions to be
skipped.
This commit only changes qtestlib and the selftests. A further commit
will change the autotests to remove the SkipMode parameter from QSKIP
calls.
Note that the change in expected output for the globaldata selftest is
deliberate, as the QSKIP in the skipLocal test function has effectively
changed from SkipAll to SkipSingle.
Task-number: QTBUG-21851, QTBUG-21652
Change-Id: I7b1c53fe7ca9dde032810b789d967e2a402bbe5d
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Alex <alex.blasche@nokia.com>
There are lots of buggy SSL servers around and to connect to them you
need to disable various features. This commit adds the ability to
disable the SSL ticket extension, the ability to disable the insertion
of empty fragments, and the ability to disable compression.
Task-number: QTBUG-21906
Change-Id: I3e1d0347a46e9030b889bbf15b2aad19b8513b73
Merge-request: 68
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Removed the bogusFds test, as it is only run on symbian in 4.8
Forward ported the posixSockets fix from 4.8
Task-number: QTBUG-20892
Change-Id: I8a8c67e12eae402724bbb07fe37e7ea1770aaeee
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Now, users of QBasicAtomicInt and QBasicAtomicPointer must be sure to
use .load() and .store() to access the values.
Change-Id: I6b48ed175618baf387dd38d821bd50e6e93c082e
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Add a ok return value for whether found or not.
Task-number: QTBUG-21672
Reviewed-by: Olivier Goffart
Change-Id: Ic0ea7455dccf1ac91705bcc1479444eb4091ded3
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Liang Qi <liang.qi@nokia.com>
Example of message of failed assert (gcc 4.6, file tst_qglobal.cpp:300):
tst_qglobal.cpp:300:92: error: invalid application of ‘sizeof’
to incomplete type ‘QStaticAssertFailure<false>’
Change-Id: Ic1798094f718eaad388d754034115aafbbb6bd5e
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
By making it possible to specify the place in memory where a
type should be constructed, any meta-type can be allocated on
the stack, for example. In the QML/JS QObject binding, this
makes it possible to call slots and access properties from
JavaScript without having to perform any mallocs (e.g. due to
QVariant creation) in the C++ <--> JS value conversion, in
the best case.
In addition to QMetaType::construct() and QMetaType::destruct(),
this change introduces QMetaType::typeSize(), which returns the
size of a type in bytes. This can be used to prepare a suitable
buffer for constructing a type using construct().
Benchmarks indicate that in-place construction is 2-5x faster
than normal construction for core and GUI types on linux-g++.
Note that there is already a QMetaType::construct() function
in Qt 4, which has been renamed to QMetaType::create() in Qt 5.
In order to avoid existing usages of construct() in user code
to call the Qt 5 construct() (when they really meant to call
create()), the third argument ("copy") of construct() is made
mandatory. Hence, calls to QMetaType::construct() written for
Qt 4 will cause a compile error when compiled with Qt 5, and
the user must adapt his code.
Task-number: QTBUG-12574
Change-Id: I836f06f6ee1c1c3edbd199a03424c78c942bdd3e
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Use a standard path for filenames that appear in the selftest's expected
test data. This will make future patches smaller.
Change-Id: I04b2e739d261f80d20b834e5b33c5b6e88d26379
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This test duplicates the skipinitdata selftest and has slightly less
informative output.
Change-Id: Ifd40e3ef8030059ec8fa0089ce5b2a994624abeb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The DEPENDS_ON macro didn't do anything and has misled many users to
think that they can write test functions that depend on other test
functions.
Task-number: QTBUG-21851
Change-Id: Ibe65b2d5d88bb81b6a0ebbe0b220f7d409a1446c
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
These functions have lived in tests/shared/util.h for a long time, but
they really belong in qtestlib.
Change-Id: I60d569d002dea220b51563931d8b7aa77a20b98b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that this test won't be testing anything until it gets fixed
for Qt5.
Change-Id: I4fa73883f58d8d4a533a7c21ecd4dd5b3c55b174
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that this test isn't testing anything when not built for X11.
Change-Id: I9e9ef8fe738c06eb86f2ce398f6a515bf17e220a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
There is no way for a .pro file to know if QProcess is in the Qt build,
so the QProcess autotest cannot be omitted from the build if QProcess is
not available. Because of this limitation, the test was using
QTEST_NOOP_MAIN when QProcess was not available, making the test appear
to pass. This commit changes QTEST_NOOP_MAIN to QSKIP, so that the user
receives a clear indication that the test isn't testing anything when
QProcess is not available.
Change-Id: I79f667b17ff98dfc47eb61fb977365abef8883fb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that these tests aren't testing anything when the required
defines are not defined.
Change-Id: I977e24205a1bb7787ecddbdb1ebbeda1f2ded321
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Use QSKIP instead of QTEST_NOOP_MAIN so that the user receives a clear
indication that these tests aren't testing anything when the required
defines are not defined.
Change-Id: I8508f50c6264fafa836090c5d6ffa6ce02dda102
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The addition of testing for multiple loggers greatly increased the total
runtime of this test, in fact making it the slowest testcase in Qt.
Fortunately this is only due to a couple of slow subtests whose behavior
is unlikely to be affected by the loggers. Change it to run these slow
subtests just for a couple of loggers, instead of all the combinations.
Change-Id: Ie90f6c0ca29470ed6a7c4e2e185f852602a2d162
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
There is no way for a .pro file to know if exceptions are supported in
the Qt build, so these tests cannot be omitted from the build if
exceptions are not supported. Because of this limitation, these tests
were using QTEST_NOOP_MAIN when exceptions were not available, making
the tests appear to pass. This commit changes QTEST_NOOP_MAIN to QSKIP,
so that the user receives a clear indication that the test isn't testing
anything when exceptions are not available.
Change-Id: I2facf08ba69e6f985e2da50dd36ad2658246b22e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The QCopChannel class was removed during Qt5 refactoring.
Change-Id: I62914eca1db65c680d90233ce9dad5d891890c4a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The qgraphicswidget and qgraphicsproxywidget tests are empty if Qt is
built without the cleanlooks style, so don't build the tests in that
case.
Change-Id: I2308e723a9b0abcc3e95b32a562fcb02afe0444d
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The test appears to be applicable only if building with g++, and even
then the test is broken.
Change-Id: I9eefb13325a10ec295a59c2bd1111e3c324ff94f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This test was empty, the logic having been recently removed because it
only applied to the Carbon UI, which will not be supported by Qt5.
Change-Id: I2b5d6aba6be4a51eadbac3ca9d19d1a68c4fc1ab
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This test is only valid with obsolete Qt Solutions packages. Any Qt
Solutions that are still of value need to be rewritten as Qt5 addons and
will be delivered with their own unit tests.
Change-Id: I099ef816655cc7de13715f5a4e5f4a06099df2d5
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Make the parent .pro files follow the pattern of listing all tests in
one place and then removing inapplicable tests as needed.
Change-Id: Ide1ae98d50dd63cd8c1b4d6fd53135cdff801bc3
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This test is only useful on Windows, so avoid building it elsewhere
rather than building an empty test.
Change-Id: I01d91266bcb2dd242e02e70741ad5b81a13c33f0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The tools tests are not built for cross-compiled Qt builds, so the logic
to make those tests empty when cross-compiled is redundant.
Change-Id: Ia3a3a680d7ade2cee78aa633b41c9ef5be6f2f15
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Rather than building the test with all the logic #ifdef'd out, just
avoid building the test at all.
Change-Id: I394f48b2dacb40325d03de719096da36fcb7312a
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
All but one of these tests was already excluded from the build on
non-Mac platforms, but still had #ifdef's to make the test empty if
compiled on a non-Mac platform.
Change-Id: I1a3677c1cdb7bd467cf4317ed4cfbac89e934e76
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This test verifies that all gui types with built-in QMetaType
support can be created, either using the default constructor
or the copy constructor.
Change-Id: Ibb1c5aab8571b598638c74112471d6869516a202
Reviewed-on: http://codereview.qt-project.org/6344
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
It only tested creating a copy of QSize.
This change adds testing of all core types, both
copy and non-copy creation.
Change-Id: If2b8fb45718c4a976dd8b883b332878f7fb0da6f
Reviewed-on: http://codereview.qt-project.org/6343
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Enrich playWithVaraint template by a macro that returns correct line
number in case of failure.
Change-Id: I7684169852481a6905b71e4420135e7e3f298b12
Reviewed-on: http://codereview.qt-project.org/6570
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
The reference file has suffered whitespace changes during the cherry
pick from 4.8. Refetched from the test server.
Change-Id: I03a0b7a66cf6743de3391905422b2f4cdcd86dcf
Reviewed-on: http://codereview.qt-project.org/6454
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
It is better to avoid building a test when we know that it is not
applicable, rather than building an empty test that appears to pass.
Note that some of the tests were already excluded by
tests/auto/other.pro, but still had the preprocessor directives to make
an empty test.
Change-Id: I71b75c37a05f6e20dbef43d82f72b29b35ef496a
Reviewed-on: http://codereview.qt-project.org/6410
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
If Qt is built without QtConcurrent, the relevant autotests should be
excluded from the build, rather than building empty tests that appear
to pass and thus produce confusing test results.
Change-Id: I43bafcb0ffa42e8981bec4e27bf6a23a28d86df9
Reviewed-on: http://codereview.qt-project.org/6395
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The platformsocketengine autotest uses the native socket engine directly
rather than through QAbstractSocket. The bind tests were failing because
the autotest was creating a socket with IPv4 (AF_INET) and then binding
with QHostAddress::Any (AF_INET6).
A linux kernel update caused this to start failing on the test machines.
Change-Id: Iea62f3d56dbfb35fcb952dcf00313578eb2bd764
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Now QInputPanel::visible() can be set true even when platform doesn't provide
a virtual keyboard. Like keyboard geometry, visibility should be dictated by
the platform plugin and not QInputPanel, whose role is more like that of a mediator.
QInputPanel::show() and ::hide() calls should be treated as requests that may fail.
Changed the QInputPanel's visible property to read-only as a setter that may
fail is not really a setter, show() and hide() should be used instead.
Enabling the new functionality cannot be activated immediatelly without breaking
existing keyboards, added a temporary function handlesInputPanelVisibility that
handovers the responsiblity of updating input panel visibility to QInputContextPlatform
only once QInputContextPlatform says that it is able to handle it.
Change-Id: Ideecaf7225cc3971f33a0ac976bd92cf7767475b
Reviewed-on: http://codereview.qt-project.org/6429
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
create() is symmetric with destroy().
Also rename the internal methods and fields to be
consistent (qDeleteHelper already had the "right"
name, though!).
This change will allow us to use construct() and
destruct() for something else: Placement new-style
allocation (QTBUG-12574).
The old construct() is still kept for now, until
the other repositories have been updated to use
create().
Change-Id: Iceb184af6cffcb0a634359cfc3516c718ba0c2f5
Reviewed-on: http://codereview.qt-project.org/6342
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Use the QMetaObjectBuilder code from declarative and add it to libQtCore.
Consolidating various QMetaObjectBuilder implimentations to avoid
code duplications in those modules.
This is currently still a private API only.
Change-Id: Ie363b4fd769c41efbb3caa7fb1d6f77af13c3c9c
Reviewed-on: http://codereview.qt-project.org/6287
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Alex <alex.blasche@nokia.com>
There was logic in .pro files for the dbus tests to omit the body of
each test if dbus was not available in the Qt build. This was all
redundant however, because tests/auto/auto.pro already excluded all dbus
tests if dbus was not available in the Qt build.
Change-Id: Iaea06e38622e5227daec4d2e08106c2da3fb4013
Reviewed-on: http://codereview.qt-project.org/6372
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Remove the usage of Q_MAC_USE_COCOA and Carbon code paths.
Change-Id: Ib569ad8c6d9ffe258f454b3c3b06e95294a10112
Reviewed-on: http://codereview.qt-project.org/5100
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Sanity-Review: Morten Johan Sørvig <morten.sorvig@nokia.com>
QScreen now has a primary and current orientation, and a QWindow can set
its orientation as well. The current screen orientation is just a hint
to the application.
Change-Id: I4635982cfac2d16634d4edd5c6ab78e9d0ac55a4
Reviewed-on: http://codereview.qt-project.org/5988
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Add a couple of previously excluded lines of code that should work for
all platforms.
Change-Id: I5f0b5365060a91cb708a3143b28f7de703fc419e
Reviewed-on: http://codereview.qt-project.org/6196
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The removed warnings just repeat information that is already in the
QSKIP's that immediately follow the warnings.
Change-Id: Id13158487e8075aab8a8f48955303edde3f4af63
Reviewed-on: http://codereview.qt-project.org/6194
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Q_CHECK_PAINTEVENTS was guaranteed to be defined prior to the code that
was conditional on it being undefined.
Change-Id: I8b48a2c6bff997de7d0e3f640203308718dd865b
Reviewed-on: http://codereview.qt-project.org/6193
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Calling qFatal may result in test output not being well-formed.
Change-Id: Ia16bade4d3311485c6ba4dd23d5624d18b192b71
Reviewed-on: http://codereview.qt-project.org/6190
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QSKIP already causes the test function that calls it to return, so the
returns removed by this commit were unreachable.
Change-Id: I1fa2f3a3271927d8a600b02d8b31bd81db9146b1
Reviewed-on: http://codereview.qt-project.org/6188
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QSKIP is intended to be used to skip test functions that are found at
run-time to be inapplicable or unsafe. If a test function can be
determined to be inapplicable at compile-time, the entire test function
should be omitted instead of replacing the body of the test function
with a QSKIP, which only serves to slow down test runs and to inflate
test run-rates with empty, inapplicable tests.
Task-number: QTQAINFRA-278
Change-Id: I95feba3edbfa092c0ef4d85bb8c6877bd6be698e
Reviewed-on: http://codereview.qt-project.org/6128
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
On Unix the table1 interface was replaced by the table2 interface, while
table1 is still used on other platforms. This commit changes the test
so that only the applicable test functions are built and run, where
previously both sets of tests were built and one set would always skip.
Change-Id: I5a785fb88fcbf4e5896e1fdb80c7c0a659597e34
Reviewed-on: http://codereview.qt-project.org/6097
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This is so that the results of LayoutTests in WebKit are
more in line with what things were like in Qt 4.8.
Change-Id: I25962e03bd8e0316cb303c0d94c25ac4e73ea9a8
Reviewed-on: http://codereview.qt-project.org/6162
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
according to the Unicode specs, code point U+0085 should be treated
like a white space character (an exceptional Cc one)
Change-Id: Ib17ae0c4d3cdafe667cafa38b645138ef24c238c
Merge-request: 32
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Reviewed-on: http://codereview.qt-project.org/6158
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
There were two fixes in 4.8 which each fixed a part of the problem.
Comparing canonical paths is more correct, but is only possible where
both directories exist. If neither directory exists, then compare
absolute paths instead.
Changed a regression test, because /tmp is a symbolic link on MacOS.
I.E. "/tmp/.." is canonically "/private" and not "/" as expected.
Task-Number: QTBUG-20495
Reviewed-By: joao
(cherry-picked from ad35d25e78c8252a72108a4ba931934047c4707e)
Change-Id: Ia4986e8337f0e512e1a3398a5a4dd36e62680b9c
Reviewed-on: http://codereview.qt-project.org/5813
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
This is in order to have a regression test for QT-5304.
However the test is also checking basic functionality of head
requests too.
Task-Number: QT-5304
Change-Id: I0d98bd1f1125ffd49d9f3c859a51b2aaee95379a
Reviewed-By: Martin Petersson
Reviewed-on: http://codereview.qt-project.org/6033
Reviewed-by: Martin Petersson <Martin.Petersson@nokia.com>
We can't rely on absolute paths when comparing directories for equality
as these don't take into account symbolic links and may also bypass ../
and ./ simplification.
Instead, canonical paths must be computed and can then be compared
according to the case sensitivity rules for the platform or file engine,
as is done in QFileInfo.
Task-number: QTBUG-20495
Reviewed-by: Prasanth Ullattil
(cherry-picked from dcee6e1371d899eb79717b8e3f3eec08b765db82)
Change-Id: Ib5f2a6ee11311c55782ea5dd0e9c3b45f9231686
Reviewed-on: http://codereview.qt-project.org/5812
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
The QSKIP is only reachable on Mac, so only compile it for Mac.
Change-Id: I268e87829e01755051f81cdaf856d936b04b3d49
Reviewed-on: http://codereview.qt-project.org/6091
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QTestLib already makes a superior version of this functionality
available to all tests, without the need to recompile. Each qtestlib
test program can be passed, via the command line, a list of test
functions and test data tags to be executed instead of executing all
test functions.
Change-Id: I1b54fc70a0c58a17209817afabfb953b5748dac4
Reviewed-on: http://codereview.qt-project.org/6015
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Omit focusColors test function at compile-time in preference to
skipping at run-time. Also removed commented out code.
Change-Id: Ib8955656f5a43b30df95b4c9865e52902dbd6b1e
Reviewed-on: http://codereview.qt-project.org/6010
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Remove empty constructor/destructor. Remove dropDownDeleted test
function which has been entirely skipped since before Qt 4.0, is
obviously incomplete (it attempts to use a QComboBox that does not
exist) and provides no statement of intention that might allow the
incompleteness to be addressed.
Change-Id: I4975b6d5a5dde1e58dab1dd393be92eddeb4c9f8
Reviewed-on: http://codereview.qt-project.org/6009
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The test was a no-op on Mac OS. It's better to avoid building or running
it on Mac OS, rather than spending time compiling and running a test
that does nothing on that platform.
Change-Id: I4aa579036788e404f8a6a8f1a80acd32338fb3cd
Reviewed-on: http://codereview.qt-project.org/5958
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This also uncovered a missing implementation of child for
dock widgets.
Change-Id: Iac4c5a51d4626769af11b277a9a345e1e31dc490
Reviewed-on: http://codereview.qt-project.org/5987
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
The operator tested by this function (QMatrix * QRect) has not existed
since Qt 2.x.
Change-Id: Id09154de2bdda70c0fe342fe78b82709953e2b56
Reviewed-on: http://codereview.qt-project.org/5965
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The test was being skipped one test function at a time on IRIX. It's
better to avoid building or running it, rather than spending time
running a test that does nothing on that platform.
This commit also turns a silent skip on other platforms into an explicit
QSKIP to make it more obvious that there's an unfixed TODO there.
Change-Id: I7cae4f0f2eaebf5977a781b2ce15d1e71ef13b36
Reviewed-on: http://codereview.qt-project.org/5957
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The unprintablenames test was designed to prevent an old failure in
QDir from returning, but the test can't be run reliably on some
file-systems and certainly isn't going to achieve its goal when it's
commented out.
Change-Id: Ib4cb965d59c291ab2436130b87e865ac21b9b483
Reviewed-on: http://codereview.qt-project.org/5956
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Renamed QGuiApplication::activeWindow() to
QGuiApplication::focusWindow(), implemented QWindow::isActive() as a
style hint, and added focus in / out events.
Change-Id: I71866e76c5a817def3e17bcc20a4fc32081a0e7a
Reviewed-on: http://codereview.qt-project.org/5811
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
QSKIP is intended to be used to skip test functions that are found at
run-time to be inapplicable or unsafe. If a test function can be
determined to be inapplicable at compile-time, the entire test function
should be omitted instead of replacing the body of the test function
with a QSKIP, which only serves to slow down test runs and to inflate
test run-rates with empty, inapplicable tests.
Task-number: QTQAINFRA-278
Change-Id: I582732e3dd657df834f9a98fd52d7ee368f2f29b
Reviewed-on: http://codereview.qt-project.org/5946
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QSKIP is intended to be used to skip test functions that are found at
run-time to be inapplicable or unsafe. If a test function can be
determined to be inapplicable at compile-time, the entire test function
should be omitted instead of replacing the body of the test function
with a QSKIP, which only serves to slow down test runs and to inflate
test run-rates with empty, inapplicable tests.
Task-number: QTQAINFRA-278
Change-Id: Ib2025339422749cf216e87ac414a3056250bf8f9
Reviewed-on: http://codereview.qt-project.org/5942
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Functions that modify the d-pointer must detach or otherwise take
measures to not modify the const, read-only shared_null.
The setSharable(bool) function takes care to detach when setting
sharable to false, but should avoid setting the sharable data member
unless d is not the shared null.
Similarly, QMap<Key, T>::setInsertInOrder() needs to detach if it is
shared with the shared_null (the logic has been updated to be the same
as setSharable()).
Change-Id: Ida5cb9818b86695f1b9f0264418b955c56424898
Reviewed-on: http://codereview.qt-project.org/5929
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
QSKIP is intended to be used to skip test functions that are found at
run-time to be inapplicable or unsafe. If a test function can be
determined to be inapplicable at compile-time, the entire test function
should be omitted instead of replacing the body of the test function
with a QSKIP, which only serves to slow down test runs and to inflate
test run-rates with empty, inapplicable tests.
Task-number: QTQAINFRA-278
Change-Id: I21664d8d92b27c26c64789fc08d0ec7b8988456a
Reviewed-on: http://codereview.qt-project.org/5941
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
QPixmapCache has until now refused to throw out shared pixmaps, i.e.
ones that still have shallow copies lying around. This leads to problems
when someone inserts two shallow copies using different keys, causing
the cache itself containing multiple shallow copies and thus forever
refusing to throw out those entries.
It's rather easy for this to accidentally happen in a user application
since QPixmap::load() or QPixmap(const QString &fileName, ...)
automatically cache the pixmap in the QPixmapCache, thus if the user
then calls QPixmapCache::insert() on the same pixmap or a shallow copy
it is locked in the QPixmapCache forever.
The only reason for not throwing out a pixmap that's shared would be to
prevent re-loading a pixmap from file when a user has a direct reference
to it in his application, but in that case the user is unlikely to
re-load the pixmap from file in any case. Therefore it seems the best
fix is to get rid of this limitation.
Task-number: QTBUG-21359
Reviewed-by: John Brooks
Reviewed-by: Olivier Goffart
(cherry picked from commit 7ab0bed3a56d46c386e65abc381264c57137cb43)
Change-Id: I46dce19227e19a25e0287cf7372177430da15a66
Reviewed-on: http://codereview.qt-project.org/4563
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>