Commit Graph

35 Commits

Author SHA1 Message Date
Jason McDonald
a13b24eac0 Improve QBuffer autotest
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>
2011-10-31 06:58:15 +01:00
Jason McDonald
be16b833a5 Remove debugging code from QFileSystemWatcher test
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>
2011-10-31 05:27:56 +01:00
Jason McDonald
31e3f78336 Remove disabled tests from QUrl test.
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>
2011-10-31 05:27:48 +01:00
Jo Asplin
b5ef53df45 Re-enabled tst_LargeFile
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>
2011-10-29 19:56:37 +02:00
Jason McDonald
238c304613 Remove obsolete MSVC workarounds from autotests.
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>
2011-10-27 06:12:09 +02:00
Jason McDonald
eeaf051558 Replace QSKIP with QFAIL in qputenv test
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>
2011-10-27 03:15:09 +02:00
Jo Asplin
1b345e8655 Re-enabled tests
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>
2011-10-26 02:58:36 +02:00
Rohan McGovern
07102cebde corelib: eliminated usage of qttest_p4.prf
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>
2011-10-25 05:03:08 +02:00
David Faure
03fd37cdf4 Add the missing unittest
Change-Id: I2384d9de7b9ef409db521087670070bd5afc85ff
Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
2011-10-23 00:57:10 +02:00
David Faure
fa0ad643a6 Check QFileInfo::isExecutable for symlinks, works as intended.
Change-Id: I35acce7ba0e111f651864b9d16abf1bac1923f22
Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
2011-10-23 00:56:45 +02:00
David Faure
8f3032dfe0 QStandardPaths: add Config and GenericData, add methods
New methods: standardLocations, locate, locateAll.

Change-Id: I60bc90f8df53727a72c4b1839ea4d1d88a204e29
Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
2011-10-23 00:56:39 +02:00
João Abecasis
fd61059d35 Fix QTemporaryFile regressions and new found issues
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>
2011-10-21 22:20:42 +02:00
João Abecasis
f4f729cb7b Atomic implementation of create file and obtain handle for Win/Symbian
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>
2011-10-21 22:20:18 +02:00
Jason McDonald
27f9f136f7 Remove SkipMode parameter from QSKIP calls.
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>
2011-10-21 01:20:29 +02:00
Jason McDonald
8f02339e76 Remove DEPENDS_ON from qtestlib API.
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>
2011-10-19 07:24:13 +02:00
Jason McDonald
ae1810658b Move QTRY_VERIFY/QTRY_COMPARE into testlib.
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>
2011-10-19 07:23:44 +02:00
Jason McDonald
d884f24fe1 Prefer QSKIP to QTEST_NOOP_MAIN.
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>
2011-10-19 01:38:36 +02:00
Jason McDonald
924d810dbd Avoid using QSKIP in lieu of compile-time checks
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>
2011-10-07 04:30:30 +02:00
Shane Kearns
0b67ad9db2 Merge fixes for QDir::operator==
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>
2011-10-06 17:32:57 +02:00
João Abecasis
d3ef642614 Fix QDir::operator==(const QDir &) const
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>
2011-10-06 11:24:20 +02:00
Jason McDonald
2aa9cb5957 Removed disabled test data in QDir autotest.
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>
2011-10-06 01:28:04 +02:00
Jason McDonald
7cfad460c5 Avoid using QSKIP in lieu of compile-time checks
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>
2011-10-05 03:04:31 +02:00
Friedemann Kleint
f18b690cca Tests: Fix compilation on Windows.
Replace Q_WS_... by Q_OS_... in corelib tests.

Change-Id: I14c41dca1ec490b3c49ba2c24e60def14c6de9da
Reviewed-on: http://codereview.qt-project.org/5778
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-10-03 07:57:41 +02:00
Jason McDonald
95cebd34eb Remove Symbian-specific code from tests.
Symbian is not a supported platform for Qt5, so this code is no longer
required.

Change-Id: I1172e6a42d518490e63e9599bf10579df08259aa
Reviewed-on: http://codereview.qt-project.org/5657
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2011-09-29 06:41:42 +02:00
David Faure
e316deffef QTemporaryFile: Test what happens if current dir isn't writable.
No surprises, QTemporaryFile("tempXXXXXX") fails. But that is
consistent with QFile::open, and it's documented, so ok.

Change-Id: I04c805a242aeda8327d25be238da6120b3c90f5a
Merge-request: 57
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Reviewed-on: http://codereview.qt-project.org/5714
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-09-28 14:02:08 +02:00
David Faure
c7a0fd0950 QTemporaryFile: use QCoreApplication::applicationName() as base filename
Merge-request: 57
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>

Change-Id: I2a29b2ba925ea92a5299272b80164658775e9c0e
Reviewed-on: http://codereview.qt-project.org/5713
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
2011-09-28 14:02:08 +02:00
Kent Hansen
dea76f3496 Make qtbase build with Qt-in-namespace again
Change-Id: I5faa8690a05d6ec352fc69c0b69848539f2ed216
Reviewed-on: http://codereview.qt-project.org/5460
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-09-28 12:18:37 +02:00
Lars Knoll
13d5d4886f This test passes fine.
Task-number: QTBUG-21402
Change-Id: Ied00dd2302b08d75e44c102f6025123b41657ca6
Reviewed-on: http://codereview.qt-project.org/5001
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2011-09-20 19:18:19 +02:00
Kent Hansen
b8d656d878 Fix autotest gui/widgets dependencies
This is in preparation of removing testlib's
dependency on QtGui and QtWidgets.

Autotests that need QtWidgets api must
explicitly include it (since the types are no
longer provided by the QtGui master header).

Autotests that don't need QtGui or QtWidgets
api shouldn't link against those libraries.

Change-Id: I2808289068514fcac582808828ad4634e2631733
Reviewed-on: http://codereview.qt-project.org/5093
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2011-09-19 10:24:25 +02:00
Jo Asplin
831a160e00 Disabled tests for refactor->master integration
This change disables failing tests to increase the
likelihood that 'make check' terminates with a zero
exit status. This is done to prevent the CI system
from blocking further commits once qtbase#refactor
is merged into qtbase#master.

Failing tests are marked as insignificant (by putting
'CONFIG += insignificant_test' in the .pro file).

Note: This is a temporary measure that needs to be cleaned up
once the refactor->master integration is complete.
Ideally all disabled tests need to be enabled and passing.
All changes will be marked by the string QTBUG-21402 in a comment
for easy location.

Task-number: QTBUG-21402
Change-Id: Ic4400671671f6d9b75b106a6aa4755b20e74378d
Reviewed-on: http://codereview.qt-project.org/4678
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2011-09-13 08:25:05 +02:00
Samuel Rødal
a6b6e760ac Merge remote branch 'gerrit/master' into HEAD
Conflicts:
	configure.exe
	src/corelib/global/qglobal.h
	src/gui/kernel/qplatformnativeinterface_qpa.h
	src/gui/widgets/qlinecontrol.cpp
	src/gui/widgets/qmenu_mac.mm
	src/gui/widgets/qmenu_p.h
	src/gui/widgets/qmenubar.cpp
	src/gui/widgets/qmenubar_p.h
	src/gui/widgets/widgets.pri
	src/plugins/platforms/wayland/qwaylandnativeinterface.cpp
	src/plugins/platforms/wayland/qwaylandnativeinterface.h
	src/src.pro
	tests/auto/qdir/tst_qdir.cpp
	tests/auto/qfileinfo/tst_qfileinfo.cpp
	tests/auto/qsslsocket/tst_qsslsocket.cpp
	tests/auto/qstring/tst_qstring.cpp

Change-Id: I64cf2cefa532ba87a92f632e3595ce6914183e9b
2011-09-06 10:55:40 +02:00
Holger Ihrig
3a7e6157d1 Moving relevant tests to corelib/kernel
Added Test for qmetaproperty

Marked QSocketNotifier Autotest as insignificant. See QTBUG-21204

Marked qtranslator Autotest as insignificant. See QTBUG-21125

Marked corelib/io/qfile/largefile as insignificant. See QTBUG-21175

Task-number: QTBUG-21066
Change-Id: I2a7f6587845c355091bb07c8dd3d1557d16db0be
Reviewed-on: http://codereview.qt.nokia.com/3598
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
2011-09-01 12:42:14 +02:00
Friedemann Kleint
547deef149 Fix compile on Windows.
Change-Id: I72b1c35c3f92e1198a8c888f9d732b202d84047c
Reviewed-on: http://codereview.qt.nokia.com/3953
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-08-31 13:34:59 +02:00
Friedemann Kleint
c5ea7fd39a Fix autotests to build on Windows.
Basically breakage by <windows.h> being included from the OpenGL
parts of <QtGui/QtGui> included from <QtTest/QtTest>.

Change-Id: Id285fb89c64bf77e2408faac5688acd085579351
Reviewed-on: http://codereview.qt.nokia.com/3952
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-08-31 13:26:27 +02:00
Holger Ihrig
012ba8c0e5 Moving relevant tests to corelib/io
Marked Test for qdiriterator as insignificant. See QTBUG-21160

Marked Test for qresourceengine as insignificant. See QTBUG-21159

Task-number: QTBUG-21066

Change-Id: I72848a651ff3e7aff1d6105dd49124e4ed070a44
Reviewed-on: http://codereview.qt.nokia.com/3577
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2011-08-31 10:08:38 +02:00