Bug 44761

Summary: [Qt] tst_QWebView::focusInputTypes() fails on MeeGo Handset with WebKit 2.1
Product: WebKit Reporter: Benjamin Poulain <benjamin>
Component: Tools / TestsAssignee: Benjamin Poulain <benjamin>
Severity: Major CC: ademar, commit-queue
Priority: P2 Keywords: Qt, QtTriaged
Version: 528+ (Nightly build)   
Hardware: Other   
OS: Other   
Bug Depends on:    
Bug Blocks: 44675    
Description Flags
Make the test more robust
Improve the test further kling: review+, kling: commit-queue+

Description Benjamin Poulain 2010-08-27 05:21:34 PDT
The test tst_QWebView::focusInputTypes() is not reliable on Meego Handset. Output of the bot:

FAIL! : tst_QWebView::focusInputTypes() 'webView->inputMethodHints() == Qt::ImhHiddenText' returned FALSE. ()
Comment 1 Benjamin Poulain 2010-08-27 05:28:00 PDT
Created attachment 65703 [details]
Make the test more robust

On my hardware, this fixes the problems with webView.inputMethodHints().

However, I still have random failures out of QVERIFY(webView.testAttribute(Qt::WA_InputMethodEnabled)). Those cannot be reproduced in gdb so I suspect a race condition. The test bot has a different environment, we'll see if this patch fixes the failure.
Comment 2 Antonio Gomes 2010-08-27 05:30:53 PDT
Comment on attachment 65703 [details]
Make the test more robust

Good work!
Comment 3 WebKit Commit Bot 2010-08-27 22:18:55 PDT
Comment on attachment 65703 [details]
Make the test more robust

Clearing flags on attachment: 65703

Committed r66298: <http://trac.webkit.org/changeset/66298>
Comment 4 WebKit Commit Bot 2010-08-27 22:18:59 PDT
All reviewed patches have been landed.  Closing bug.
Comment 5 Ademar Reis 2010-08-30 10:32:39 PDT
Revision r66298 cherry-picked into qtwebkit-2.1 with commit 7c8ea628dd2c7d5c05e1682059d6178b2f8bc7e6
Comment 6 Benjamin Poulain 2010-09-27 07:53:20 PDT
Created attachment 68911 [details]
Improve the test further

The test still fails on the test bots for an unknown reason. I hope to get more info from the output with this patch while still improving the test.

Using QCOMPARE() instead of QVERIFY() will output the return value so will help identifying the issue. Adding the "hasFocus()" on each element will help identifying if the element got the focus at all on the device.