Remove Q_ASSERT from accessibility autotest
authorJason McDonald <jason.mcdonald@nokia.com>
Tue, 19 Apr 2011 03:55:05 +0000 (13:55 +1000)
committerRohan McGovern <rohan.mcgovern@nokia.com>
Wed, 18 May 2011 00:46:40 +0000 (10:46 +1000)
Instead of crashing when we can't get a QAccessibleInterface for a
widget, output a useful warning and return a value that makes the test
fail gracefully.

Change-Id: I0b292cdd8f5a59e26bdc9b0b67cea2b58591df7d
Task-number: QTBUG-17582
Reviewed-by: Rohan McGovern
(cherry picked from commit d8dc5bfdff25d72e8276c6e80080d72315abe7e0)

tests/auto/qaccessibility/tst_qaccessibility.cpp

index 6e580cb..5841e95 100644 (file)
@@ -371,8 +371,9 @@ static QString stateNames(int state)
 QAccessible::State state(QWidget * const widget)
 {
     QAccessibleInterface *iface = QAccessible::queryAccessibleInterface(widget);
-    Q_ASSERT(iface);
-    QAccessible::State state = iface->state(0);
+    if (!iface)
+        qWarning() << "Cannot get QAccessibleInterface for widget";
+    QAccessible::State state = (iface ? iface->state(0) : static_cast<QAccessible::State>(0));
     delete iface;
     return state;
 }