From b4ec690bbdb4e56d33cfe979f2d54de9a714e4fd Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Wed, 14 Mar 2012 14:01:54 +0100 Subject: [PATCH] Improve accessibility test to handle more text events. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: I67ece6c9bb755e84c786b32e8e3396eaf634fda1 Reviewed-by: Jan-Arve Sæther --- .../other/qaccessibility/tst_qaccessibility.cpp | 45 +++++++++++++++++----- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index a01589d..5f0539a 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -1921,15 +1921,42 @@ void tst_QAccessibility::lineEditTest() QAccessibleTextUpdateEvent update(lineEdit, 0, "foo", "bar"); QVERIFY(QTestAccessibility::containsEvent(&update)); -// QTestEventList keys; -// keys.addKeyClick('D'); -// keys.addKeyClick('E'); -// keys.addKeyClick(Qt::Key_Left); -// keys.addKeyClick(Qt::Key_Left); -// keys.addKeyClick('C'); -// keys.addKeyClick('O'); -// keys.simulate(lineEdit); -// FIXME: Test key press events... + // FIXME check what extra events are around and get rid of them + QTestAccessibility::clearEvents(); + + QTestEventList keys; + keys.addKeyClick('D'); + keys.simulate(lineEdit); + + QAccessibleTextInsertEvent insertD(lineEdit, 3, "D"); + QVERIFY_EVENT(&insertD); + keys.clear(); + keys.addKeyClick('E'); + keys.simulate(lineEdit); + + QAccessibleTextInsertEvent insertE(lineEdit, 4, "E"); + QVERIFY(QTestAccessibility::containsEvent(&insertE)); + keys.clear(); + keys.addKeyClick(Qt::Key_Left); + keys.addKeyClick(Qt::Key_Left); + keys.simulate(lineEdit); + cursorEvent.setCursorPosition(4); + QVERIFY(QTestAccessibility::containsEvent(&cursorEvent)); + cursorEvent.setCursorPosition(3); + QVERIFY(QTestAccessibility::containsEvent(&cursorEvent)); + + keys.clear(); + keys.addKeyClick('C'); + keys.simulate(lineEdit); + + QAccessibleTextInsertEvent insertC(lineEdit, 3, "C"); + QVERIFY(QTestAccessibility::containsEvent(&insertC)); + + keys.clear(); + keys.addKeyClick('O'); + keys.simulate(lineEdit); + QAccessibleTextInsertEvent insertO(lineEdit, 4, "O"); + QVERIFY(QTestAccessibility::containsEvent(&insertO)); } delete toplevel; QTestAccessibility::clearEvents(); -- 2.7.4