summaryrefslogtreecommitdiffstats
path: root/tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp')
-rw-r--r--tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp b/tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp
index 686fef5801..68552bf88a 100644
--- a/tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp
+++ b/tests/auto/declarative/qsgcanvas/tst_qsgcanvas.cpp
@@ -144,7 +144,7 @@ public:
int iterations;
protected:
- Node* updatePaintNode(Node *, UpdatePaintNodeData *){
+ QSGNode* updatePaintNode(QSGNode *, UpdatePaintNodeData *){
iterations++;
update();
return 0;
@@ -166,6 +166,8 @@ private slots:
void touchEvent_basic();
void touchEvent_propagation();
void touchEvent_propagation_data();
+
+ void clearCanvas();
};
tst_qsgcanvas::tst_qsgcanvas()
@@ -413,6 +415,21 @@ void tst_qsgcanvas::touchEvent_propagation_data()
QTest::newRow("opacity of 0") << true << true << 0.0;
}
+void tst_qsgcanvas::clearCanvas()
+{
+ QSGCanvas *canvas = new QSGCanvas;
+ QSGItem *item = new QSGItem;
+ item->setParentItem(canvas->rootItem());
+
+ QVERIFY(item->canvas() == canvas);
+
+ delete canvas;
+
+ QVERIFY(item->canvas() == 0);
+
+ delete item;
+}
+
QTEST_MAIN(tst_qsgcanvas)