Q_OBJECT
Q_PROPERTY(int result READ result WRITE setResult FINAL)
Q_PROPERTY(NestedObject *nested READ nested CONSTANT)
+ Q_PROPERTY(NestedObject *nested2 READ nested2 FINAL CONSTANT)
public:
ResultObject() : m_result(0), m_resultCounter(0) {}
void setResult(int result) { m_result = result; m_resultCounter++; }
NestedObject *nested() { return &m_nested; }
+ NestedObject *nested2() { return &m_nested2; }
private:
int m_result;
int m_resultCounter;
NestedObject m_nested;
+ NestedObject m_nested2;
};
void registerTypes();
// NestedObject::result.
void tst_v4::nestedObjectAccess()
{
- QQmlComponent component(&engine, testFileUrl("nestedObjectAccess.qml"));
+ {
+ QQmlComponent component(&engine, testFileUrl("nestedObjectAccess.qml"));
- QObject *o = component.create();
- QVERIFY(o != 0);
+ QObject *o = component.create();
+ QVERIFY(o != 0);
- ResultObject *ro = qobject_cast<ResultObject *>(o);
- QVERIFY(ro != 0);
+ ResultObject *ro = qobject_cast<ResultObject *>(o);
+ QVERIFY(ro != 0);
- QCOMPARE(ro->result(), 37);
+ QCOMPARE(ro->result(), 37);
- delete o;
+ delete o;
+ }
+
+ {
+ QQmlComponent component(&engine, testFileUrl("nestedObjectAccess2.qml"));
+
+ QObject *o = component.create();
+ QVERIFY(o != 0);
+
+ ResultObject *ro = qobject_cast<ResultObject *>(o);
+ QVERIFY(ro != 0);
+
+ QEXPECT_FAIL("","QTBUG-24606", Continue);
+ QCOMPARE(ro->result(), 37);
+
+ delete o;
+ }
}
void tst_v4::subscriptionsInConditionalExpressions()