summaryrefslogtreecommitdiffstats
path: root/src/testlib
Commit message (Collapse)AuthorAgeFilesLines
* QTestLib: Disable window state restore on macOSMorten Johan Sørvig2016-08-184-1/+124
| | | | | | | | | | | For test runs we want to start with a clean slate and ignore previously saved window state. This also prevents the “previous restore failed” dialog from from showing and blocking the test run. Change-Id: I8e5b87a903cf1d937d628c2b062f917c4c37f176 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Doc: Change instances of '(Mac) OS X' to 'macOS'Topi Reinio2016-08-121-1/+1
| | | | | | | | | | | | | | | As of version 10.12 (Sierra), the name of Apple's desktop operating system will be macOS. Change the occurrences where the Mac platform is discussed to use a macro \macos, which expands to 'macOS'. This helps with adapting to future renaming. Update the instructions on mac-specific Q_OS_* macro usage. Add a \target for the old 'Qt for OS X' topic to keep links working for other documentation modules that try to link with the old name. Change-Id: Id33fb0cd985df702a4ae4efb4c5fd428e77d9b85 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Improve reliability of callgrind benchmark resultsSimon Hausmann2016-08-051-1/+6
| | | | | | | | | When running under callgrind, do not bother with the use of the watchdog. The constructor waits for the thread to start, which adds an overall run-time cost that depends on the OS scheduling. Change-Id: I162e2e311c43a6892ebc67dea39899e40babb61d Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* Document that -nocrashhandler enables debugging of crashesMitch Curtis2016-07-202-2/+2
| | | | | | | | | | | | | | It's not clear why an assertion triggered while running a test can't be debugged, while the same assertion triggered while running an application can. Even though this documentation might still not be the place people will look, hopefully having the terms "debugging crashes" here will make it more visible in search results. Task-number: QTBUG-54779 Change-Id: I151b04380df57126259d3d7797957a548eb6cd55 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Testlib: Replace QString::arg() formatting by snprintf()Friedemann Kleint2016-07-081-6/+26
| | | | | | | | | | | Formatting of values needs to be fast since QTestlib always pessimistically formats the values passed to QCOMPARE even if they match. Speeds up tst_qrect by factor 1.5..2. Task-number: QTBUG-38890 Change-Id: I3627db77a305a46c1d51a14c04b88db8018faa60 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Doc: Fix examples install pathLeena Miettinen2016-06-032-1/+6
| | | | | | | | | The example directory name for Qt Test module is qtestlib. Without this change, Qt Creator cannot find the tutorial files and tags them "broken" in the Welcome mode. Change-Id: Ib2de0cd2263aa1651abb697f9f03ecd8eb871ca2 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* qtestcase: Fix buffer over-run, '\0' appended beyond buffer endEdward Welbourne2016-05-311-1/+1
| | | | | | | | | | | | | Noticed by Coverity (CID 161673). If the file being read contains enough to fill the buffer, read() shall do that and return the nbytes it was passed; as this was the size of the buffer, subsequently writing a '\0' at this index in buffer is out of bounds. Fortunately, /proc/self/status is typically < 1k so fits well inside the 2k buffer. All the same, we can safely pass sizeof(buffer) - 1 as nbytes and *be sure* of not getting a buffer over-run. Change-Id: Ib620a330fbc94f0579c953737f7c4417ca449968 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* Improve documentation of BLACKLIST file format.Edward Welbourne2016-05-251-15/+32
| | | | | | | | | | | | | | | | | In particular, make sure the word BLACKLIST appears in it so it can actually be *found*. Mention the comment format, mention version suffixes, mention negation; expand and clarify the description. Break it up into paragraphs for ease of reading. Corrected the example to use osx, not its old platform name. Gave it a comment that I wish I'd found in the BLACKLIST file that obliged me to come looking for this in the first place. Illustrated the use of comments to document reasons for ignoring tests. Change-Id: I78d49b4706c0f70b714f7a410f850fb42ebb77c0 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* qtestblacklist: check against duplicating versioned distroEdward Welbourne2016-05-251-1/+5
| | | | | | | | Also check the version is non-empty. Probably makes no difference, but it's obviously more correct. Change-Id: I05eee5623ac432d2ea02f7aad874513beeb2ceeb Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* qtestblacklist: only generate the distro and version onceEdward Welbourne2016-05-251-6/+13
| | | | | | | | | | | | We were looking up distro and version, in order to conditionally add them to keywords if missing, on every keyword line of each BLACKLIST that we parsed. In particular, this meant the static holding the list of keywords couldn't be const. Move the distro-handling to an intemediary function that adds to the raw keywords and supplies one-off initialization for the list of conditions to match. Change-Id: Ia383ec060e24b7f72d2c8fd6ae65816318daafd0 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Doc: Remove repository name from examplesinstallpathTopi Reinio2016-05-121-1/+1
| | | | | | | | Examples in binary packages now directly match the install path. Change-Id: Ic1487bc766cfd3b0a0a340cc4ae4ba49d953eaa6 Task-number: QTBUG-52953 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* QTest: Fix printing of values of Q_ENUMsThiago Macieira2016-05-081-1/+1
| | | | | | | | QMetaEnum::key(n) returns the n-th key, which is not necessarily the one of value n. For the key of value n, we want QMetaEnum::valueToKey(n). Change-Id: Ic90fe6b1cbe84978a02fffff141bf4a06074917a Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix grammar in QSKIP documentationMitch Curtis2016-05-031-1/+1
| | | | | Change-Id: Ia57dd2c859ae5b025515c45593a7f89a1b7f28ff Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* testlib: added env QTEST_FUNCTION_TIMEOUT for single test function timeoutLiang Qi2016-04-271-1/+14
| | | | | | | | | | | This is a regression with 5.5, it causes some customer test functions crash. d3d10cf2 introduced the 5 minutes timeout. The timeout could be changed after this. Task-number: QTBUG-52402 Change-Id: I8940bbde5004b4d888732b551274f079ddf20563 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* QTestlib: Document newly added enumeration value KeyAction:Shortcut.Friedemann Kleint2016-04-111-0/+1
| | | | | | | | | | Amends change 0e342fce4c665d72a50147c4f4b30ea08cc6c87b, fixing a qdoc warning: qtbase/src/testlib/qtestcase.qdoc:524: warning: Undocumented enum item 'Shortcut' in QTest::KeyAction Change-Id: I7a7116bd5ff160c4a13f2fb0f9512f0d71385a4b Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Improve gdb backtrace handlingFrederik Gladhorn2016-04-081-0/+1
| | | | | | | | | | | | | | | | Long backtraces would get cut off in the terminal, this is especially bothersome when having lots of threads. Make sure that the output is complet by setting height=0 for gdb. The gdb manual states: "If you specify a height of either unlimited or zero lines, gdb does not pause during output no matter how long the output is. This is useful if output is to a file or to an editor buffer." Change-Id: I282054bc9e205d67d3076e37d5c928475803b22d Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* Fix QFINDTESTDATA when using cmake ninja generatorStephen Kelly2016-03-191-0/+5
| | | | | | | | | | | | | | | The Qt CI does not have ninja, but the autotest can be used for manual regression finding. cd qtbase/tests/auto/cmake qmake make check cd build cmake . -DHAVE_NINJA=ON ctest -R FINDTESTDATA Change-Id: Ic3f3748f6ab04e37fa5287c59486e5cd46dcabb4 Reviewed-by: Stephen Kelly <steveire@gmail.com>
* QtTest: fix UB in QSpontaneKeyEvent::setSpontaneous()Marc Mutz2016-03-071-9/+2
| | | | | | | | | | | | | | | | | | | | | Found by UBSan: src/testlib/qtestspontaneevent.h:95:38: runtime error: member call on address 0x7ffc33019650 which does not point to an object of type 'QSpontaneKeyEvent' 0x7ffc33019650: note: object is of type 'QMouseEvent' 83 2b 00 00 98 e8 fa 8e 83 2b 00 00 00 00 00 00 00 00 00 00 02 00 04 00 00 00 00 00 00 00 00 00 ^~~~~~~~~~~~~~~~~~~~~~~ vptr for 'QMouseEvent' src/testlib/qtestspontaneevent.h:95:38: runtime error: member call on address 0x7ffc330196e0 which does not point to an object of type 'QSpontaneKeyEvent' 0x7ffc330196e0: note: object is of type 'QKeyEvent' 00 00 00 00 f8 e8 fa 8e 83 2b 00 00 00 00 00 00 00 00 00 00 07 00 04 00 00 00 00 00 00 00 00 00 ^~~~~~~~~~~~~~~~~~~~~~~ vptr for 'QKeyEvent' Fix by providing setSpontaneous() on QEvent as a private function and befriending QSpontaneKeyEvent. Make setSpontaneous() always-inline to avoid BiC between 5.6.0 and 5.6.1. Change-Id: Ic60d82ed6a858f4f13f41fa3d2d1db6e808896b7 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.6.0' into 5.6Liang Qi2016-02-151-3/+3
|\ | | | | | | Change-Id: I0b190005377a23a91da3563428e223b8a3b18333
| * BIC: Rename back symbol that was mistakenly thought to be privateTor Arne Vestbø2016-02-021-3/+3
| | | | | | | | | | | | | | | | Being called from an inline function we were breaking BIC (however insignificant) by renaming the symbol in c7e5e1d9e0. Change-Id: I683bfd53a5ad0de7db0fae6d9aa7d175e00f96ed Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | Reduce allocations by using reserve()Sérgio Martins2016-02-071-1/+3
| | | | | | | | | | Change-Id: If34fa53402985f6b3c5e7217bce4a1177af835b6 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Don't include <qtest.h> from qtestblacklist.cppTor Arne Vestbø2016-02-021-1/+0
|/ | | | | | | | | | | | It's only supposed to be included by clients of the library, and confuses qmake's dependency resolution into thinking the header-only features such as qtestkeyboard.h and qtestmouse.h are dependencies of this source file. Change-Id: I5fe73b752c1c491ee0088bced77f997696d96c62 Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Remove some old QT_MAC_USE_COCOA cruftTor Arne Vestbø2016-01-281-4/+0
| | | | | Change-Id: Ib9cb57563274c722023084e94f2cd439088366a8 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Use QFileInfo::exists(f) instead of QFileInfo(f).exists()Tobias Koenig2016-01-211-5/+5
| | | | | | | QFileInfo::exists(f) is somewhat faster than the version which creates an temporary object. Change-Id: I5f931a86d9dfad57d99efe04ca115422de43def9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove doc for non-existent QTest::qCompare() variant.Edward Welbourne2016-01-061-4/+0
| | | | | | | There's no variant with bool first argument. Change-Id: Ib18b50ed6271d21253d075dc72b6e2b8744cf131 Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
* Cleanup memory owned by QTestTablePrivateFrank Meerkoetter2015-12-301-0/+5
| | | | | | | | | | Since 7a42c8c15c59ef5fe84e6f293f2c97d38b85599c QTestTablePrivate no longer cleans up the memory it holds in dataList. This will make tools such as valgrind/address-sanitizer generate a lot of noise about directly or indirectly leaked memory. Change-Id: Ic0900ecdd7b76cda9f5366f3950bccde2f1b244c Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* QtBase: remove explicit function info from qWarning() etcMarc Mutz2015-11-281-5/+4
| | | | | | | | | | | This information is already registered by the QMessageLogger ctor. Where, by dropping the << Q_FUNC_INFO in ostream-style qDebug(), only a string literal remained, converted to printf-style qDebug() on the go. Change-Id: I3f261c98fd7bcfa1fead381a75a82713bb75e6f3 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* Fix QCOMPARE with enum classes.Robin Burchell2015-11-261-1/+1
| | | | | | | | | | | As these are strongly typed, they won't implicitly convert to int, so make sure to cast explicitly. (cherry picked from commit 9626baaea98edc13236250fc4b92d461b80e3875, auto test is not included) Task-number: QTBUG-49597 Change-Id: I29c4331a9b0c61f2e60c2bcab5a99f65daa7060f Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QSignalSpy: Improve warning about unregistered parameter types.Friedemann Kleint2015-11-251-2/+5
| | | | | | | | | | | | Don't know how to handle 'hint', use qRegisterMetaType to register it. becomes: QSignalSpy: Unable to handle parameter 'hint' of type 'QAbstractItemModel::LayoutChangeHint' of method 'layoutChanged', use qRegisterMetaType to register it. Task-number: QTBUG-49623 Change-Id: I5020bb5b6f4ba87438d0f862279bed1ceb203d12 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* QTest::mouseEvent expects window-local coordinates.Volker Krause2015-11-171-1/+1
| | | | | | | | This makes the automatic center click feature of the mouse event methods also work if the target window isn't positioned at 0,0. Change-Id: I0d711e484620900ba2ffc4139f7e13346a7482d3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Testlib: Replace linked lists in QTestTablePrivate by std::vector.Friedemann Kleint2015-11-061-122/+39
| | | | | | | | | | This speeds up tests/auto/corelib/tools/qchar which spends a lot of time in QTestTablePrivate::elementAt(), QTestTablePrivate::dataAt() from 6s to 500ms on an average Linux machine. Task-number: QTBUG-38890 Change-Id: I16b75819f88ca7974a581affd8409f7b4038a712 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* Testlib: Avoid formatting unneeded messages.Friedemann Kleint2015-10-301-9/+11
| | | | | | | | | Brings down gui/painting/qcolor from 7s to 3s, reducing the calls to printf() helpers from 16E6 to 10E6. Task-number: QTBUG-38890 Change-Id: I34065e6f09fc9a14920b06aa6936908229f3f9c4 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
* Doc: Update examplesinstallpath to include the repository nameTopi Reinio2015-10-211-1/+1
| | | | | | | | | | | | The examplesinstallpath variable in .qdocconf files defines the path under QT_INSTALL_EXAMPLES where examples are found. To match the way examples are packaged in Qt 5.6, prefix each install path with the repository name. Task-number: QTBUG-48736 Change-Id: I6a35c94fdacaad21cd044411aba02027b9019300 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
* Testlib: Output function / total time along with crash dump.Friedemann Kleint2015-10-135-13/+36
| | | | | | | | | | | | | | | | | | | Previously, only QXmlTestLogger had timers to take elapsed times and log them. Move those into class QTestLog for access by the loggers and output the times in the crash dump to make it easier to spot hangs/recursion crashes. Produces: QFATAL : foo() Received signal 11 Function time: 22ms Total time: 23ms A crash occurred in ... Function time: 24ms Total time: 26ms Task-number: QTBUG-47370 Change-Id: Ia530a63104087daffc9a15f68c15d93378b9407e Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Libraries: Fix single-character string literals.Friedemann Kleint2015-10-131-1/+1
| | | | | | | Use character literals where applicable. Change-Id: I8e198774c2247c1cc1d852a41b59b301199b7878 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* Examples/Doc snippets: Fix single-character string literals.Friedemann Kleint2015-10-131-1/+1
| | | | | | | Use character literals where applicable. Change-Id: I79fa5018f05735201ae35ee94ba0d356fcad1056 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Distinguish between Objective-C and Objective-C++ sourcesTor Arne Vestbø2015-10-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of lumping both Objective-C (.m) and Objective-C++ (.mm) sources into the same pile, passing them on to the same compiler as for C++ (CXX), with the C++ flags (CXXFLAGS), we follow Apple's lead and treat them as variants of the C and C++ languages separately, so that Objective-C sources are built with CC and with CFLAGS, and Objective-C++ sources with CXX, and CXXFLAGS. This lets us remove a lot of duplicated flags and definitions from the QMAKE_OBJECTIVE_CFLAGS variable, which in 99% of the cases just matched the C++ equivalent. The remaining Objective-C/C++ flags are added to CFLAGS/CXXFLAGS, as the compiler will just ignore them when running in C/C++ mode. This matches Xcode, which also doesn't have a separate build setting for Objective-C/C++ flags. The Makefile qmake generator has been rewritten to support Objective-C/C++ fully, by not assuming that we're just iterating over the C and C++ extensions when dealing with compilation rules, precompiled headers, etc. There's some duplicated logic in this code, as inherent by qmake's already duplicated code paths, but this can be cleaned up when C++11 support is mandatory and we can use lambda functions. Task-number: QTBUG-36575 Change-Id: I4f06576d5f49e939333a2e03d965da54119e5e31 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Move shortcut handling back into QPA and simplify deliveryTor Arne Vestbø2015-10-071-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 7f5b94b47 moved shortcut handling into QGuiApplication (for all platforms except OS X), due to crashes on Android where the events are delivered from another thread. Now that we have synchronous event delivery (also across threads) from QPA, this is no longer needed, and we can move the code back to QPA, where the platform has more control over when and how shortcut events are delivered in relation to normal key events. Handling shortcuts is as before a two step process. We first send a QKeyEvent::ShortcutOverride event to the active window, which allows clients (widgets e.g.) to signal that they want to handle the shortcut themselves. If the override event is accepted, we treat it as the shortcut not being handled as a regular shortcut, and send the event as a key press instead, allowing the widget to handle the shortcut. If nothing accepted the shortcut override event we pass it along to the global shortcut map, which will treat the event as handled if an exact or partial match is found. The QShortcutMap::tryShortcutEvent() and nextState() implementation has been simplified to not use the events accepted state for its internal operation, which removes the need for saving the state of the incoming event. The QKeyEvent::ShortcutOverride event was also always sent with the accepted state set to false, by calling ignore() on it before sending it. This is now explicit by having shortcut override events being ignored by default in their constructor, and the documentation has been updated accordingly. Change-Id: I9afa29dbc00bef09fd22ee6bf09661b06340d715 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
* QTestLib: Add MSVC 2015 to blacklist.Friedemann Kleint2015-09-291-1/+3
| | | | | | Task-number: QTBUG-48455 Change-Id: I8ea322f393a1f8d44183892f20e5461d571bc4c0 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Replace direct QPA access in tst_qguiappliction with testlib wrapperTor Arne Vestbø2015-09-151-1/+7
| | | | | Change-Id: I698aa9d7633992d257296759f5e04307ff0d8331 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Add a delimiter before "TracerPid"Thiago Macieira2015-09-131-1/+1
| | | | | | | | Future-proofing against a future version of the Linux kernel adding a "FooTracerPid:" before the TracerPid entry. Change-Id: I42e7ef1a481840699a8dffff140347457902900f Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Fix some qdoc warnings.Friedemann Kleint2015-09-071-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | qtbase/src/corelib/io/qdebug.cpp:698: warning: Class QDebugStateSaver has no \inmodule command; using project name by default: QtCore qtbase/src/gui/opengl/qopenglframebufferobject.cpp:1138: warning: Can't link to 'takeTextures()' qtbase/src/gui/opengl/qopenglframebufferobject.cpp:1159: warning: Can't link to 'takeTextures()' qtbase/src/gui/opengl/qopenglframebufferobject.cpp:953: warning: No such parameter 'height' in QOpenGLFramebufferObject::addColorAttachment() qtbase/src/gui/opengl/qopenglframebufferobject.cpp:953: warning: No such parameter 'width' in QOpenGLFramebufferObject::addColorAttachment() qtbase/src/gui/opengl/qopenglframebufferobject.cpp:953: warning: Undocumented parameter 'size' in QOpenGLFramebufferObject::addColorAttachment() qtbase/src/gui/painting/qpaintdevice.qdoc:80: warning: Undocumented enum item 'PdmDevicePixelRatioScaled' in QPaintDevice::PaintDeviceMetric qtbase/src/testlib/qbenchmarkmetric.cpp:154: warning: Invalid use of '\relates' (already a member of 'QTest') qtbase/src/testlib/qbenchmarkmetric.cpp:81: warning: Invalid use of '\relates' (already a member of 'QTest') qtbase/src/widgets/dialogs/qdialog.cpp:152: warning: Can't link to 'QCloseEvent::ignore()' qtbase/src/widgets/dialogs/qdialog.cpp:557: warning: Can't link to 'QApplication::quit()' qtbase/src/widgets/kernel/qwidget.cpp:8326: warning: Can't link to 'QCloseEvent::accept()' qtbase/src/widgets/kernel/qwidget.cpp:8326: warning: Can't link to 'QCloseEvent::ignore()' qtbase/src/widgets/kernel/qwidget.cpp:9300: warning: Can't link to 'QWheelEvent::accept()' qtbase/src/widgets/kernel/qwidget.cpp:9300: warning: Can't link to 'QWheelEvent::ignore()' qtbase/src/widgets/kernel/qwidget.cpp:9321: warning: Can't link to 'QTabletEvent::accept()' qtbase/src/widgets/kernel/qwidget.cpp:9321: warning: Can't link to 'QTabletEvent::ignore()' qtbase/src/widgets/kernel/qwidget.cpp:9373: warning: Can't link to 'QKeyEvent::ignore()' Change-Id: I97ae85398181645c1054c303e5c8a87deb619409 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Testlib/Windows: Output crash information on stdout instead of stderr.Friedemann Kleint2015-09-031-9/+10
| | | | | | | | | | | | | | | Make it easier to capture information about crashing tests in log files, since it is not possible to do something like foo > log.txt 2> errlog.txt on Windows. Adapt selftest. [ChangeLog][QtTest][Important Behavior Changes] Crash/exception information is now logged to standard output on Windows. Task-number: QTBUG-47370 Change-Id: I3e6a2d25855ed0f20516418a031990b562f5f757 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Fix some qdoc-warnings.Friedemann Kleint2015-08-271-1/+1
| | | | | | | | | | | | | | | | | qtbase/src/widgets/kernel/qaction.cpp:1257: warning: Can't link to 'QApplication::setAttribute()' qtbase/src/widgets/kernel/qapplication.cpp:519: warning: Can't link to 'arguments()' qtbase/src/widgets/kernel/qapplication.cpp:1939: warning: Can't link to 'quit()' qtbase/src/widgets/kernel/qapplication.cpp:2946: warning: Can't link to 'quit()' qtbase/src/widgets/kernel/qapplication.cpp:2946: warning: Can't link to 'exit()' qtbase/src/widgets/kernel/qapplication.cpp:2946: warning: Can't link to 'processEvents()' qtbase/src/widgets/widgets/qmenu.cpp:1354: warning: Can't link to 'Recent Files Example' qtbase/examples/widgets/doc/src/tetrix.qdoc:28: warning: Can't link to 'QApplication::quit()' qtbase/src/testlib/qtestcase.cpp:268: warning: Undocumented parameter 'timeout' in QTRY_VERIFY2_WITH_TIMEOUT() qtbase/src/corelib/global/qnamespace.qdoc:2427: warning: Can't link to 'QApplication::setLayoutDirection()' qtbase/src/corelib/global/qnamespace.qdoc:751: warning: Can't link to 'QApplication::setDesktopSettingsAware()' Change-Id: Ic8170a40fb1cd84e3fb4dd75d9429f4b485f8bd9 Reviewed-by: Martin Smith <martin.smith@digia.com>
* Disable the testlib watchdog if a debugger is presentSimon Hausmann2015-08-191-5/+41
| | | | | | | | | | Currently this is only implemented on Linux and Windows. But it's an improvement nevertheless when debugging Qt unit tests :) Change-Id: Iea307dad0e12c24f305c16f0a1805e7c246ee372 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* QtTest: Add QHostAddress support for QCOMPARE failuresThiago Macieira2015-08-151-0/+20
| | | | | Change-Id: Iee8cbc07c4434ce9b560ffff13cc6dad04a5a554 Reviewed-by: Richard J. Moore <rich@kde.org>
* Merge remote-tracking branch 'origin/5.5' into devFrederik Gladhorn2015-08-061-2/+9
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/global/qt-cpp-defines.qdocconf src/3rdparty/forkfd/forkfd.c src/corelib/codecs/qtextcodec.cpp src/corelib/kernel/qmetatype.cpp src/corelib/tools/qset.qdoc src/gui/accessible/qaccessible.cpp src/gui/image/qpixmapcache.cpp src/opengl/qgl.cpp src/tools/qdoc/generator.cpp src/widgets/kernel/qwidget.cpp tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp Change-Id: I4fbe1fa756a54c6843aa75f4ef70a1069ba7b085
| * QtTest: fix build error with -no-guiTasuku Suzuki2015-07-201-2/+9
| | | | | | | | | | Change-Id: I6f4297c7f959394ca31dfb228dac8659ea6c854d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QTestLib: Add macros QTRY_VERIFY2_WITH_TIMEOUT(), QTRY_VERIFY2().Friedemann Kleint2015-07-222-2/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add QTRY_VERIFY2_WITH_TIMEOUT() similar to QTRY_VERIFY_WITH_TIMEOUT() except that QTRY_VERIFY2() is used below the loop and QTRY_VERIFY2() based on it. Add tests to cmptest. [ChangeLog][QtTest] Added macros QTRY_VERIFY2_WITH_TIMEOUT(), QTRY_VERIFY2() making it possible to output a message after the timeout has expired. Change-Id: I587e24f3aeb73542dbf3ccb936a16f2e0806555f Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* | QTestLib/Windows: Try to obtain a stack trace on crash.Friedemann Kleint2015-07-221-2/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a helper class for resolving debug symbols by dynamically loading dbghelp.dll and try to obtain a symbol at the exception location and a stack trace by using CaptureStackBackTrace(). The output looks like: A crash occurred in d:\dev\projects\crashingtest_5d\debug\tst_crashingtesttest.exe. Exception address: 0x0000000052E2853A Exception code : 0xc0000005 Nearby symbol : QString::length Stack: # 1: windowsFaultHandler() - 0x00007FFE080CACD0 ... # 8: QString::length() - 0x0000000052E28530 [ChangeLog][QtTest] A stack trace will be output on standard error if a test crashes. Task-number: QTBUG-47370 Change-Id: I7217e02ec7dc0c96132fe84d1a175d0bed9c5aaf Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>