summaryrefslogtreecommitdiffstats
path: root/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2013-03-18 20:22:52 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-03-23 11:43:39 +0100
commit6d9541ae96441d849e87d763a636b8f36b416764 (patch)
treed9e0a250c8dc3d7a4fe54f8e4e18f3f15324db9b /tests/auto/other/qaccessibility/tst_qaccessibility.cpp
parent6ec9b34cbb5fa6b1214cc6551002f46f732ba72f (diff)
Do not update accessibility for invalid interfaces
Change-Id: I8dc29ea51393406e529c76f25bf2f8cf426e26cf Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Diffstat (limited to 'tests/auto/other/qaccessibility/tst_qaccessibility.cpp')
-rw-r--r--tests/auto/other/qaccessibility/tst_qaccessibility.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
index f5f336ed64..ce8032e0c3 100644
--- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
+++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp
@@ -364,6 +364,24 @@ void tst_QAccessibility::eventTest()
QVERIFY(QTestAccessibility::containsEvent(&hideEvent));
delete button;
+
+ // Make sure that invalid events don't bring down the system
+ // these events can be in user code.
+ QWidget *widget = new QWidget();
+ QAccessibleEvent ev1(widget, QAccessible::Focus);
+ QAccessible::updateAccessibility(&ev1);
+
+ QAccessibleEvent ev2(widget, QAccessible::Focus);
+ ev2.setChild(7);
+ QAccessible::updateAccessibility(&ev2);
+ delete widget;
+
+ QObject *object = new QObject();
+ QAccessibleEvent ev3(widget, QAccessible::Focus);
+ QAccessible::updateAccessibility(&ev3);
+ delete object;
+
+ QTestAccessibility::clearEvents();
}