From d9effc96522a2df9567c2dd43ccee00e777add43 Mon Sep 17 00:00:00 2001
From: Liang Qi <liang.qi@digia.com>
Date: Tue, 30 Apr 2013 12:33:16 +0200
Subject: [PATCH] Tests: add qmlCreateWindow in tst_qqmlcomponent

Task-number: QTBUG-30919
Change-Id: I474a327e057978356a4ae395d8f59a66afaf2f7f
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
---
 .../qml/qqmlcomponent/data/createWindow.qml   | 29 +++++++++++++++++++
 .../qml/qqmlcomponent/tst_qqmlcomponent.cpp   | 10 +++++++
 2 files changed, 39 insertions(+)
 create mode 100644 tests/auto/qml/qqmlcomponent/data/createWindow.qml

diff --git a/tests/auto/qml/qqmlcomponent/data/createWindow.qml b/tests/auto/qml/qqmlcomponent/data/createWindow.qml
new file mode 100644
index 0000000000..af0b7edeb2
--- /dev/null
+++ b/tests/auto/qml/qqmlcomponent/data/createWindow.qml
@@ -0,0 +1,29 @@
+import QtQuick 2.1
+import QtQuick.Window 2.1
+
+Window {
+    id: window1;
+    objectName: "window1";
+    color: "#00FF00";
+    width: 100; height: 100;
+    Item {
+        objectName: "item1"
+        width: 100; height: 100;
+        MouseArea {
+            objectName: "mousearea"
+            anchors.fill: parent;
+            onPressed: window2.requestActivate();
+        }
+        Component.onCompleted: window2.show();
+    }
+
+    Window {
+        id: window2;
+        objectName: "window2";
+        color: "#FF0000";
+        width: 100; height: 100;
+        Item {
+            width: 100; height: 100;
+        }
+    }
+}
diff --git a/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp b/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp
index 697c8103b0..9eeff66e7a 100644
--- a/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp
+++ b/tests/auto/qml/qqmlcomponent/tst_qqmlcomponent.cpp
@@ -105,6 +105,7 @@ public:
 private slots:
     void null();
     void loadEmptyUrl();
+    void qmlCreateWindow();
     void qmlCreateObject();
     void qmlCreateObjectWithProperties();
     void qmlIncubateObject();
@@ -163,6 +164,15 @@ void tst_qqmlcomponent::qmlIncubateObject()
     delete object;
 }
 
+void tst_qqmlcomponent::qmlCreateWindow()
+{
+    QQmlEngine engine;
+    QQmlComponent component(&engine);
+    component.loadUrl(testFileUrl("createWindow.qml"));
+    QQuickWindow* window = qobject_cast<QQuickWindow *>(component.create());
+    QVERIFY(window);
+}
+
 void tst_qqmlcomponent::qmlCreateObject()
 {
     QQmlEngine engine;
-- 
GitLab