summaryrefslogtreecommitdiffstats
path: root/tests/auto/declarative/visual
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/declarative/visual')
-rw-r--r--tests/auto/declarative/visual/ListView/basic1/basic1.qml27
-rw-r--r--tests/auto/declarative/visual/ListView/basic1/data/raster/image0.pngbin0 -> 1737 bytes
-rw-r--r--tests/auto/declarative/visual/ListView/basic1/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/ListView/basic1/test1
-rw-r--r--tests/auto/declarative/visual/ListView/basic2/basic2.qml31
-rw-r--r--tests/auto/declarative/visual/ListView/basic2/data/raster/image0.pngbin0 -> 1737 bytes
-rw-r--r--tests/auto/declarative/visual/ListView/basic2/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/ListView/basic2/test1
-rw-r--r--tests/auto/declarative/visual/ListView/basic3/basic3.qml29
-rw-r--r--tests/auto/declarative/visual/ListView/basic3/data/raster/image0.pngbin0 -> 1737 bytes
-rw-r--r--tests/auto/declarative/visual/ListView/basic3/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/ListView/basic3/test1
-rw-r--r--tests/auto/declarative/visual/ListView/basic4/basic4.qml33
-rw-r--r--tests/auto/declarative/visual/ListView/basic4/data/raster/image0.pngbin0 -> 1737 bytes
-rw-r--r--tests/auto/declarative/visual/ListView/basic4/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/ListView/basic4/test1
-rw-r--r--tests/auto/declarative/visual/bindinganimation/bindinganimation.qml40
-rw-r--r--tests/auto/declarative/visual/bindinganimation/data/raster/image0.pngbin0 -> 817 bytes
-rw-r--r--tests/auto/declarative/visual/bindinganimation/data/raster/manifest.qml88
-rw-r--r--tests/auto/declarative/visual/bindinganimation/test1
-rw-r--r--tests/auto/declarative/visual/colorAnimation/colorAnimation.qml41
-rw-r--r--tests/auto/declarative/visual/colorAnimation/data/raster/image0.pngbin0 -> 607 bytes
-rw-r--r--tests/auto/declarative/visual/colorAnimation/data/raster/manifest.qml524
-rw-r--r--tests/auto/declarative/visual/colorAnimation/data/raster/manifest.xml522
-rw-r--r--tests/auto/declarative/visual/colorAnimation/manifest-play.xml73
-rw-r--r--tests/auto/declarative/visual/easing/easing.qml186
-rw-r--r--tests/auto/declarative/visual/easing/image0.pngbin0 -> 17530 bytes
-rw-r--r--tests/auto/declarative/visual/easing/manifest-play.xml23
-rw-r--r--tests/auto/declarative/visual/easing/manifest.xml23
-rw-r--r--tests/auto/declarative/visual/easing/pics/qtlogo.pngbin0 -> 2738 bytes
-rw-r--r--tests/auto/declarative/visual/flickable/Day.qml27
-rw-r--r--tests/auto/declarative/visual/flickable/cork.jpgbin0 -> 22211 bytes
-rw-r--r--tests/auto/declarative/visual/flickable/flickable.qml55
-rw-r--r--tests/auto/declarative/visual/flipable/flipable.xml138
-rw-r--r--tests/auto/declarative/visual/flipable/image0.pngbin0 -> 6184 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/manifest-play.xml24
-rw-r--r--tests/auto/declarative/visual/flipable/manifest.xml24
-rw-r--r--tests/auto/declarative/visual/flipable/pics/arrow.pngbin0 -> 546 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/face.pngbin0 -> 10112 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo0.pngbin0 -> 10412 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo1.pngbin0 -> 11068 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo10.pngbin0 -> 12539 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo2.pngbin0 -> 11490 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo3.pngbin0 -> 11308 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo4.pngbin0 -> 11322 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo5.pngbin0 -> 11497 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo6.pngbin0 -> 11707 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo7.pngbin0 -> 11101 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo8.pngbin0 -> 11558 bytes
-rw-r--r--tests/auto/declarative/visual/flipable/pics/photo9.pngbin0 -> 10943 bytes
-rw-r--r--tests/auto/declarative/visual/pauseAnimation/data/raster/image0.pngbin0 -> 3209 bytes
-rw-r--r--tests/auto/declarative/visual/pauseAnimation/data/raster/manifest.qml1264
-rw-r--r--tests/auto/declarative/visual/pauseAnimation/pauseAnimation.qml30
-rw-r--r--tests/auto/declarative/visual/pauseAnimation/pics/qtlogo.pngbin0 -> 2738 bytes
-rw-r--r--tests/auto/declarative/visual/pauseAnimation/test1
-rw-r--r--tests/auto/declarative/visual/qfxtext/elide/data/raster/image0.pngbin0 -> 909 bytes
-rw-r--r--tests/auto/declarative/visual/qfxtext/elide/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/qfxtext/elide/elide.qml35
-rw-r--r--tests/auto/declarative/visual/qfxtext/elide/test1
-rw-r--r--tests/auto/declarative/visual/repeater/basic1/basic1.qml28
-rw-r--r--tests/auto/declarative/visual/repeater/basic1/data/raster/image0.pngbin0 -> 1287 bytes
-rw-r--r--tests/auto/declarative/visual/repeater/basic1/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/repeater/basic1/test1
-rw-r--r--tests/auto/declarative/visual/repeater/basic2/basic2.qml32
-rw-r--r--tests/auto/declarative/visual/repeater/basic2/data/raster/image0.pngbin0 -> 1287 bytes
-rw-r--r--tests/auto/declarative/visual/repeater/basic2/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/repeater/basic2/test1
-rw-r--r--tests/auto/declarative/visual/repeater/basic3/basic3.qml30
-rw-r--r--tests/auto/declarative/visual/repeater/basic3/data/raster/image0.pngbin0 -> 1287 bytes
-rw-r--r--tests/auto/declarative/visual/repeater/basic3/data/raster/manifest.qml15
-rw-r--r--tests/auto/declarative/visual/repeater/basic3/test1
-rw-r--r--tests/auto/declarative/visual/repeater/basic4/basic4.qml34
-rw-r--r--tests/auto/declarative/visual/repeater/basic4/data/raster/image0.pngbin0 -> 1287 bytes
-rw-r--r--tests/auto/declarative/visual/repeater/basic4/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/repeater/basic4/test1
-rwxr-xr-xtests/auto/declarative/visual/runtests.sh3
-rw-r--r--tests/auto/declarative/visual/tests12
-rw-r--r--tests/auto/declarative/visual/tst_visual.cpp74
-rw-r--r--tests/auto/declarative/visual/visual.pro5
-rw-r--r--tests/auto/declarative/visual/webview/autosize/data/raster/image0.pngbin0 -> 4820 bytes
-rw-r--r--tests/auto/declarative/visual/webview/autosize/data/raster/manifest.qml8
-rw-r--r--tests/auto/declarative/visual/webview/autosize/test1
82 files changed, 3554 insertions, 0 deletions
diff --git a/tests/auto/declarative/visual/ListView/basic1/basic1.qml b/tests/auto/declarative/visual/ListView/basic1/basic1.qml
new file mode 100644
index 0000000..b1309ca
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic1/basic1.qml
@@ -0,0 +1,27 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 200
+ height: 300
+ id: Page
+ ListView {
+ anchors.fill: parent
+ delegate: Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ model: ListModel {
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic1/data/raster/image0.png b/tests/auto/declarative/visual/ListView/basic1/data/raster/image0.png
new file mode 100644
index 0000000..f8a4830
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic1/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/ListView/basic1/data/raster/manifest.qml b/tests/auto/declarative/visual/ListView/basic1/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic1/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic1/test b/tests/auto/declarative/visual/ListView/basic1/test
new file mode 100644
index 0000000..49fcf5a
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic1/test
@@ -0,0 +1 @@
+basic1.qml
diff --git a/tests/auto/declarative/visual/ListView/basic2/basic2.qml b/tests/auto/declarative/visual/ListView/basic2/basic2.qml
new file mode 100644
index 0000000..fa20332
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic2/basic2.qml
@@ -0,0 +1,31 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 200
+ height: 300
+ id: Page
+ Component {
+ id: Delegate
+ Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ }
+ ListView {
+ anchors.fill: parent
+ delegate: Delegate
+ model: ListModel {
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic2/data/raster/image0.png b/tests/auto/declarative/visual/ListView/basic2/data/raster/image0.png
new file mode 100644
index 0000000..f8a4830
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic2/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/ListView/basic2/data/raster/manifest.qml b/tests/auto/declarative/visual/ListView/basic2/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic2/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic2/test b/tests/auto/declarative/visual/ListView/basic2/test
new file mode 100644
index 0000000..eb79495
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic2/test
@@ -0,0 +1 @@
+basic2.qml
diff --git a/tests/auto/declarative/visual/ListView/basic3/basic3.qml b/tests/auto/declarative/visual/ListView/basic3/basic3.qml
new file mode 100644
index 0000000..aee252f
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic3/basic3.qml
@@ -0,0 +1,29 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 200
+ height: 300
+ id: Page
+ ListModel {
+ id: Model
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ ListView {
+ anchors.fill: parent
+ model: Model
+ delegate: Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic3/data/raster/image0.png b/tests/auto/declarative/visual/ListView/basic3/data/raster/image0.png
new file mode 100644
index 0000000..f8a4830
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic3/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/ListView/basic3/data/raster/manifest.qml b/tests/auto/declarative/visual/ListView/basic3/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic3/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic3/test b/tests/auto/declarative/visual/ListView/basic3/test
new file mode 100644
index 0000000..9ec306b
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic3/test
@@ -0,0 +1 @@
+basic3.qml
diff --git a/tests/auto/declarative/visual/ListView/basic4/basic4.qml b/tests/auto/declarative/visual/ListView/basic4/basic4.qml
new file mode 100644
index 0000000..76c5723
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic4/basic4.qml
@@ -0,0 +1,33 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 200
+ height: 300
+ id: Page
+ ListModel {
+ id: Model
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ Component {
+ id: Delegate
+ Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ }
+ ListView {
+ anchors.fill: parent
+ model: Model
+ delegate: Delegate
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic4/data/raster/image0.png b/tests/auto/declarative/visual/ListView/basic4/data/raster/image0.png
new file mode 100644
index 0000000..f8a4830
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic4/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/ListView/basic4/data/raster/manifest.qml b/tests/auto/declarative/visual/ListView/basic4/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic4/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/ListView/basic4/test b/tests/auto/declarative/visual/ListView/basic4/test
new file mode 100644
index 0000000..2a7f227
--- /dev/null
+++ b/tests/auto/declarative/visual/ListView/basic4/test
@@ -0,0 +1 @@
+basic4.qml
diff --git a/tests/auto/declarative/visual/bindinganimation/bindinganimation.qml b/tests/auto/declarative/visual/bindinganimation/bindinganimation.qml
new file mode 100644
index 0000000..2086648
--- /dev/null
+++ b/tests/auto/declarative/visual/bindinganimation/bindinganimation.qml
@@ -0,0 +1,40 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 320
+ height: 240
+ id: Page
+ Rect {
+ id: MyRect
+ width: 100
+ height: 100
+ color: "red"
+ x: 10
+ }
+ states: [
+ State {
+ name: "hello"
+ SetProperties {
+ target: MyRect
+ x: 100
+ }
+ SetProperties {
+ target: MyMouseRegion
+ onClicked: "Page.currentState = ''"
+ }
+ }
+ ]
+ transitions: [
+ Transition {
+ NumberAnimation {
+ properties: "x"
+ }
+ }
+ ]
+ MouseRegion {
+ id: MyMouseRegion
+ anchors.fill: parent
+ onClicked: { Page.state= 'hello' }
+ }
+}
diff --git a/tests/auto/declarative/visual/bindinganimation/data/raster/image0.png b/tests/auto/declarative/visual/bindinganimation/data/raster/image0.png
new file mode 100644
index 0000000..92f8cdd
--- /dev/null
+++ b/tests/auto/declarative/visual/bindinganimation/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/bindinganimation/data/raster/manifest.qml b/tests/auto/declarative/visual/bindinganimation/data/raster/manifest.qml
new file mode 100644
index 0000000..cd096d7
--- /dev/null
+++ b/tests/auto/declarative/visual/bindinganimation/data/raster/manifest.qml
@@ -0,0 +1,88 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+ TestMouse {
+ time: 1296
+ type: 2
+ button: 1
+ buttons: 1
+ globalPos: '87,985'
+ pos: '83,29'
+ }
+ TestMouse {
+ time: 1360
+ type: 3
+ button: 1
+ buttons: 0
+ globalPos: '87,985'
+ pos: '83,29'
+ }
+ TestFrame {
+ time: 1376
+ hash: '7CB5FC371040E587DE9F06CE14A4B29A'
+ }
+ TestFrame {
+ time: 1392
+ hash: 'A5E5DBD179C7E48D34B8107F8CC6B5BE'
+ }
+ TestFrame {
+ time: 1408
+ hash: 'A5E5DBD179C7E48D34B8107F8CC6B5BE'
+ }
+ TestFrame {
+ time: 1424
+ hash: '69FB651AA84E07E4A6DEAA31CB10641B'
+ }
+ TestFrame {
+ time: 1440
+ hash: '3FFC4C4BD282010A359DCEAF2D8496AC'
+ }
+ TestFrame {
+ time: 1456
+ hash: '3FFC4C4BD282010A359DCEAF2D8496AC'
+ }
+ TestFrame {
+ time: 1472
+ hash: 'ADA58B13247A654BBCECF3F254AB797F'
+ }
+ TestFrame {
+ time: 1488
+ hash: 'B314799BC732B6BD8C42A622B720E3D5'
+ }
+ TestFrame {
+ time: 1504
+ hash: 'B314799BC732B6BD8C42A622B720E3D5'
+ }
+ TestFrame {
+ time: 1520
+ hash: '7377569C13CF5DE368B22209AB8AE395'
+ }
+ TestFrame {
+ time: 1536
+ hash: '7C1E4A1F80C68EE57D052A9D7851F937'
+ }
+ TestFrame {
+ time: 1552
+ hash: '7C1E4A1F80C68EE57D052A9D7851F937'
+ }
+ TestFrame {
+ time: 1568
+ hash: '24D6DB9544205075836A86A54B55A820'
+ }
+ TestFrame {
+ time: 1584
+ hash: '24D6DB9544205075836A86A54B55A820'
+ }
+ TestFrame {
+ time: 1600
+ hash: '8A84E4C3E8AD4C6A9A7BD3E1620718C1'
+ }
+ TestFrame {
+ time: 1616
+ hash: 'B8EA544A4EF3B7E0A9E0A7777B55EDC7'
+ }
+}
diff --git a/tests/auto/declarative/visual/bindinganimation/test b/tests/auto/declarative/visual/bindinganimation/test
new file mode 100644
index 0000000..bb59333
--- /dev/null
+++ b/tests/auto/declarative/visual/bindinganimation/test
@@ -0,0 +1 @@
+bindinganimation.qml
diff --git a/tests/auto/declarative/visual/colorAnimation/colorAnimation.qml b/tests/auto/declarative/visual/colorAnimation/colorAnimation.qml
new file mode 100644
index 0000000..d0c988c
--- /dev/null
+++ b/tests/auto/declarative/visual/colorAnimation/colorAnimation.qml
@@ -0,0 +1,41 @@
+import Qt 4.6
+
+Rect {
+ id: mainrect
+ width: 200; height: 200
+ state: "first"
+ states: [
+ State {
+ name: "first"
+ SetProperties {
+ target: mainrect
+ color: "red"
+ }
+ },
+ State {
+ name: "second"
+ SetProperties {
+ target: mainrect
+ color: "blue"
+ }
+ }
+ ]
+ transitions: [
+ Transition {
+ fromState: "first"
+ toState: "second"
+ reversible: true
+ SequentialAnimation {
+ ColorAnimation {
+ duration: 2000
+ target: mainrect
+ property: "color"
+ }
+ }
+ }
+ ]
+ MouseRegion {
+ anchors.fill: parent
+ onClicked: { mainrect.state = 'second' }
+ }
+}
diff --git a/tests/auto/declarative/visual/colorAnimation/data/raster/image0.png b/tests/auto/declarative/visual/colorAnimation/data/raster/image0.png
new file mode 100644
index 0000000..f00a2e2
--- /dev/null
+++ b/tests/auto/declarative/visual/colorAnimation/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/colorAnimation/data/raster/manifest.qml b/tests/auto/declarative/visual/colorAnimation/data/raster/manifest.qml
new file mode 100644
index 0000000..0926b2c
--- /dev/null
+++ b/tests/auto/declarative/visual/colorAnimation/data/raster/manifest.qml
@@ -0,0 +1,524 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+ TestMouse {
+ time: 944
+ type: 2
+ button: 1
+ buttons: 1
+ globalPos: '1789,188'
+ pos: '73,76'
+ }
+ TestMouse {
+ time: 992
+ type: 3
+ button: 1
+ buttons: 0
+ globalPos: '1789,188'
+ pos: '73,76'
+ }
+ TestFrame {
+ time: 1008
+ hash: 'E5BDA0DAF98288CE18DB6CE06EDA3BA0'
+ }
+ TestFrame {
+ time: 1024
+ hash: 'D35008F75B8C992F80FB16BA7203649D'
+ }
+ TestFrame {
+ time: 1040
+ hash: '14F43E0784DDF42EA8550DB88C501BF1'
+ }
+ TestFrame {
+ time: 1056
+ hash: '02276E158B5391480B1BDEAADF1FB903'
+ }
+ TestFrame {
+ time: 1072
+ hash: '35D9513EB97A2C482B7CD197DE910934'
+ }
+ TestFrame {
+ time: 1088
+ hash: 'FAF0FD681E60BB2489099F5DF772B6CD'
+ }
+ TestFrame {
+ time: 1104
+ hash: 'A863D3E346F94785A3A392FDC91526EB'
+ }
+ TestFrame {
+ time: 1120
+ hash: 'FDF328D3F6EB8410DA59A91345E41A44'
+ }
+ TestFrame {
+ time: 1136
+ hash: '83514A3B10D5BE8F6C3B128D0F3E0B1C'
+ }
+ TestFrame {
+ time: 1152
+ hash: 'EAD0EAE76CD00189075964671EFFBAEA'
+ }
+ TestFrame {
+ time: 1168
+ hash: '24D2457FCD51490FDA23071BF9929D12'
+ }
+ TestFrame {
+ time: 1184
+ hash: '1478683446CF543DACBE31D0B76A98A6'
+ }
+ TestFrame {
+ time: 1200
+ hash: '99F7DA1F31FE920F6C02ADD4042AE925'
+ }
+ TestFrame {
+ time: 1216
+ hash: '22DEF892006CF66667770B0F17BAF6C0'
+ }
+ TestFrame {
+ time: 1232
+ hash: '6A36D5A77099BFD58BAF285478FF04E4'
+ }
+ TestFrame {
+ time: 1248
+ hash: '6258150666B59B20AB476724C07FC20C'
+ }
+ TestFrame {
+ time: 1264
+ hash: 'F1636315BC950A6DD400D9C7ED263B88'
+ }
+ TestFrame {
+ time: 1280
+ hash: '18447EA8DC2E8DA956788E5B3CF3790A'
+ }
+ TestFrame {
+ time: 1296
+ hash: '1D2A6E65997A73E9E670356C8E8B63B2'
+ }
+ TestFrame {
+ time: 1312
+ hash: 'BED0242C0F9EF229D1392835286D5782'
+ }
+ TestFrame {
+ time: 1328
+ hash: '88923C190E9E5BEADEF8A409C06DF9D6'
+ }
+ TestFrame {
+ time: 1344
+ hash: '2D133E7EE60C97386F57838B3F0976C7'
+ }
+ TestFrame {
+ time: 1360
+ hash: '85B1821CC50F2A9F3ED6944F792B7A2F'
+ }
+ TestFrame {
+ time: 1376
+ hash: '395195716D76BC0BE7B2033ED37A7A1C'
+ }
+ TestFrame {
+ time: 1392
+ hash: '243DBFFCF416926242BBCB7348974C4C'
+ }
+ TestFrame {
+ time: 1408
+ hash: 'A755068679616D8AC65C2AA7431F2A19'
+ }
+ TestFrame {
+ time: 1424
+ hash: 'E8249B35A47EB492CBDF2D91CC8426F0'
+ }
+ TestFrame {
+ time: 1440
+ hash: '15F3DA1C0E6F0779B96859D51171DD27'
+ }
+ TestFrame {
+ time: 1456
+ hash: '258C0C756AAC3DE743B43051F2AACE6B'
+ }
+ TestFrame {
+ time: 1472
+ hash: 'A58B9FDF301D72B2CC5C93934CC8927B'
+ }
+ TestFrame {
+ time: 1488
+ hash: 'A9181D30870D472521F8904818CE520F'
+ }
+ TestFrame {
+ time: 1504
+ hash: '7F9E94069CCF3897C26A71BD7BECD903'
+ }
+ TestFrame {
+ time: 1520
+ hash: 'BDF305C2F46CDB86DBF57B1E0CC5A65B'
+ }
+ TestFrame {
+ time: 1536
+ hash: 'FE5B6865D7E4FC7D1D42C1E74F8666F7'
+ }
+ TestFrame {
+ time: 1552
+ hash: '734F0DE45A6E34C9EAB7EF606196F96A'
+ }
+ TestFrame {
+ time: 1568
+ hash: '02A361C4534FDF7F286DC3E6DC23275C'
+ }
+ TestFrame {
+ time: 1584
+ hash: 'E649155AD69999C14B92F6561E4D1185'
+ }
+ TestFrame {
+ time: 1600
+ hash: '01AF177084FAB755D622973F64B92018'
+ }
+ TestFrame {
+ time: 1616
+ hash: '097CC4A082DFAB995D213A3A73883C97'
+ }
+ TestFrame {
+ time: 1632
+ hash: 'D7B4239A3280B1EB8E885E3F422DF8E9'
+ }
+ TestFrame {
+ time: 1648
+ hash: '59893977994E34E83F91E7CE3AD65D6D'
+ }
+ TestFrame {
+ time: 1664
+ hash: 'B68E3FBB5CDCD6BD96DF7DEC558DB42B'
+ }
+ TestFrame {
+ time: 1680
+ hash: '94AD0580648F36A1E18A9EA7E249B04D'
+ }
+ TestFrame {
+ time: 1696
+ hash: '750A4C01D2F5806A89A1C6CC6A9B9A68'
+ }
+ TestFrame {
+ time: 1712
+ hash: '4F109F50F388F1BFA4BC6B03B3E6E514'
+ }
+ TestFrame {
+ time: 1728
+ hash: 'C6168D5CF27A533E8EE636637667BE47'
+ }
+ TestFrame {
+ time: 1744
+ hash: 'F8120547BED987AA34C00DA5A01A4D1E'
+ }
+ TestFrame {
+ time: 1760
+ hash: 'CBFF526136FA2C128C8B898FBBEF9E5C'
+ }
+ TestFrame {
+ time: 1776
+ hash: 'F29E52398FAB1A239A63DF4C32F2FC69'
+ }
+ TestFrame {
+ time: 1792
+ hash: '7178BFE86FD2FD513218B33760460F8D'
+ }
+ TestFrame {
+ time: 1808
+ hash: 'CA83285BC8AC633403896FE976896EB0'
+ }
+ TestFrame {
+ time: 1824
+ hash: '96BA486C09CC69D5AA38C46C00DF1181'
+ }
+ TestFrame {
+ time: 1840
+ hash: 'B88EAB335842787869F4A14824C19DD8'
+ }
+ TestFrame {
+ time: 1856
+ hash: '065AA59012729E1E1A246A2083142690'
+ }
+ TestFrame {
+ time: 1872
+ hash: 'DD0E98C8398861002C5F178C5F9F612D'
+ }
+ TestFrame {
+ time: 1888
+ hash: '04192C2B545948048ECCF4D81BBDE198'
+ }
+ TestFrame {
+ time: 1904
+ hash: 'BB7502C7208281EF9FD41714AB88A1A8'
+ }
+ TestFrame {
+ time: 1920
+ hash: '5397195471890D08B703DCA101E5BC7C'
+ }
+ TestFrame {
+ time: 1936
+ hash: '4C678CDBEBB2FFD2CBF012CA77800CDE'
+ }
+ TestFrame {
+ time: 1952
+ hash: '0D7A34ECD0C7F52B2C015037BF1902C6'
+ }
+ TestFrame {
+ time: 1968
+ hash: 'FD9D5048BE749AC4369FDA2D018B43AE'
+ }
+ TestFrame {
+ time: 1984
+ hash: '93EE03795CD57AE6F7FE3A020B039AD4'
+ }
+ TestFrame {
+ time: 2000
+ hash: '5E1118963F219C39761CA7FBF564A9CA'
+ }
+ TestFrame {
+ time: 2016
+ hash: '8F40038741903150136170503649D941'
+ }
+ TestFrame {
+ time: 2032
+ hash: 'B087B7D0AA6224821F8E18718FF5E77D'
+ }
+ TestFrame {
+ time: 2048
+ hash: 'AA46B04A3C67DC772265ED2901955565'
+ }
+ TestFrame {
+ time: 2064
+ hash: 'AC024BF2AEB4BECDF31A09FE0A6DB8F3'
+ }
+ TestFrame {
+ time: 2080
+ hash: '13745A174E4D06E2108A5BF125BA50CC'
+ }
+ TestFrame {
+ time: 2096
+ hash: 'BD972F0D8E230ECA0B3FEA1B8C960C08'
+ }
+ TestFrame {
+ time: 2112
+ hash: 'CBDBEC802A58E7CED0CF45B3AB0BC0BA'
+ }
+ TestFrame {
+ time: 2128
+ hash: '5128584C50305C7D218B81B8367FA3D5'
+ }
+ TestFrame {
+ time: 2144
+ hash: 'A71461D3593F3685620668916DE870BD'
+ }
+ TestFrame {
+ time: 2160
+ hash: '74EBAC8F32CF044B58D9883DBCD9A722'
+ }
+ TestFrame {
+ time: 2176
+ hash: 'FEDC5B638F339B90FE59B478721E65B7'
+ }
+ TestFrame {
+ time: 2192
+ hash: 'BCB8C7159F54C353551DD3BFF3203966'
+ }
+ TestFrame {
+ time: 2208
+ hash: '4E9B083075BC5E9287A8ABC982778B56'
+ }
+ TestFrame {
+ time: 2224
+ hash: '1D6F02AA99AFA47D77FC49AB894B365A'
+ }
+ TestFrame {
+ time: 2240
+ hash: 'A204FEEC783B3B05DE4C209C21745826'
+ }
+ TestFrame {
+ time: 2256
+ hash: '665A2A8FF00B9663157802767F504754'
+ }
+ TestFrame {
+ time: 2272
+ hash: '624FB09EBE60CB87D767FAF8D2420B1E'
+ }
+ TestFrame {
+ time: 2288
+ hash: 'E5AF0CDC33F3275A25ABB09E9165F310'
+ }
+ TestFrame {
+ time: 2304
+ hash: '02BAFB5A81CA66F7670AC93DE5123860'
+ }
+ TestFrame {
+ time: 2320
+ hash: 'E7AA6374C73832E57CEB2427A1E258AA'
+ }
+ TestFrame {
+ time: 2336
+ hash: 'B5ABD0DFF1AB076FAAC7CC226E83F5D0'
+ }
+ TestFrame {
+ time: 2352
+ hash: 'B759ACC35BCCFF8EFC2E6FE276DDC0F7'
+ }
+ TestFrame {
+ time: 2368
+ hash: 'CE52E18C1F7732768779863B45314FF5'
+ }
+ TestFrame {
+ time: 2384
+ hash: '99D30652559DD6931E0C95543EEAA149'
+ }
+ TestFrame {
+ time: 2400
+ hash: 'FFBD9A00E05E085B89296D19D5CAEC57'
+ }
+ TestFrame {
+ time: 2416
+ hash: '9C9D658B9C25602816B8066BF19105DB'
+ }
+ TestFrame {
+ time: 2432
+ hash: '2B7FD058E6601E22A30BB7106B1C683B'
+ }
+ TestFrame {
+ time: 2448
+ hash: 'F4C7E26B19EE0A3E7C9688685EB7BD05'
+ }
+ TestFrame {
+ time: 2464
+ hash: '0DC6D593BCEFF56B7F81F2A49D37FEFB'
+ }
+ TestFrame {
+ time: 2480
+ hash: '9BFD7AD5091CCBDDE43C593E133A7B10'
+ }
+ TestFrame {
+ time: 2496
+ hash: '2703B617937914A90EA42EBF249D79EE'
+ }
+ TestFrame {
+ time: 2512
+ hash: 'B77E2983138254016C4CCA53100F46FA'
+ }
+ TestFrame {
+ time: 2528
+ hash: '60C4DD24187D1281081479E586F02B37'
+ }
+ TestFrame {
+ time: 2544
+ hash: '62F2511ABD99EF1231C9FA4B91D4ABFE'
+ }
+ TestFrame {
+ time: 2560
+ hash: 'E309B3353FD174E883D309571CADDC98'
+ }
+ TestFrame {
+ time: 2576
+ hash: '1E2D6A134C7B12DDE551B148EF4F088C'
+ }
+ TestFrame {
+ time: 2592
+ hash: 'E5DC5450604A491CC24A0DCF5C278B58'
+ }
+ TestFrame {
+ time: 2608
+ hash: 'C8DAE97C10E1962C1E6A51AB3AB8579E'
+ }
+ TestFrame {
+ time: 2624
+ hash: '4E1B7E06F55FB084080689B474F1FE1D'
+ }
+ TestFrame {
+ time: 2640
+ hash: 'B4639C907FA937BF15FAC62421170CD8'
+ }
+ TestFrame {
+ time: 2656
+ hash: 'C250208A0CAEB5F6CB4D3AAC3D7D350B'
+ }
+ TestFrame {
+ time: 2672
+ hash: 'A73351EABECF0D71149EFE31F197413E'
+ }
+ TestFrame {
+ time: 2688
+ hash: '479425F1B7AFF79E4DFB7FCA534AF018'
+ }
+ TestFrame {
+ time: 2704
+ hash: '046D0F0040A52D1F26BA9F7C5DE06EF4'
+ }
+ TestFrame {
+ time: 2720
+ hash: '655778BF13C6080903150B0EB43A7EDC'
+ }
+ TestFrame {
+ time: 2736
+ hash: '72DA0BBE81514870655FDD3354ADAC60'
+ }
+ TestFrame {
+ time: 2752
+ hash: 'DEFE0BDF675C65FFF55AAACED1E4DAE7'
+ }
+ TestFrame {
+ time: 2768
+ hash: 'C988628B6C3D3780E9A865C7694926CD'
+ }
+ TestFrame {
+ time: 2784
+ hash: '5AB17563655231089EDD986FF13D6012'
+ }
+ TestFrame {
+ time: 2800
+ hash: 'C1ADFF1D2E5800ED466D1691D3B17382'
+ }
+ TestFrame {
+ time: 2816
+ hash: '70129BA01FBB19592B9DC0D0A3B3E7DF'
+ }
+ TestFrame {
+ time: 2832
+ hash: '0000829EF7ED908BF430D42904D59CC2'
+ }
+ TestFrame {
+ time: 2848
+ hash: '843D2927F50AB87B4A86B7A6AAEED91F'
+ }
+ TestFrame {
+ time: 2864
+ hash: 'DA86D21756025E7DE8050586D5E2A1F8'
+ }
+ TestFrame {
+ time: 2880
+ hash: '48DD1BD6580133B0793FEE327EA4F1E6'
+ }
+ TestFrame {
+ time: 2896
+ hash: 'F0618193DCD0BA2837249515A1898B1C'
+ }
+ TestFrame {
+ time: 2912
+ hash: 'A530184E57251065286C0CBBA7301E9C'
+ }
+ TestFrame {
+ time: 2928
+ hash: '64A1D7203973D65DD342793007A61C58'
+ }
+ TestFrame {
+ time: 2944
+ hash: '5B830DFC6BA442772DE87D75D5A578DE'
+ }
+ TestFrame {
+ time: 2960
+ hash: '5563B056B0409B65F60DD16DD0DD890E'
+ }
+ TestFrame {
+ time: 2976
+ hash: 'B8BCF9AD2CA8720C11563A23D8280804'
+ }
+ TestFrame {
+ time: 2992
+ hash: '8C0FCDA4F8956394C53FC4BA18CAA850'
+ }
+}
diff --git a/tests/auto/declarative/visual/colorAnimation/data/raster/manifest.xml b/tests/auto/declarative/visual/colorAnimation/data/raster/manifest.xml
new file mode 100644
index 0000000..1fe2f15
--- /dev/null
+++ b/tests/auto/declarative/visual/colorAnimation/data/raster/manifest.xml
@@ -0,0 +1,522 @@
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+ TestFrame {
+ time: 16
+ hash: 'E5BDA0DAF98288CE18DB6CE06EDA3BA0'
+ }
+ TestFrame {
+ time: 32
+ hash: 'D35008F75B8C992F80FB16BA7203649D'
+ }
+ TestFrame {
+ time: 48
+ hash: '14F43E0784DDF42EA8550DB88C501BF1'
+ }
+ TestFrame {
+ time: 64
+ hash: '02276E158B5391480B1BDEAADF1FB903'
+ }
+ TestFrame {
+ time: 80
+ hash: '35D9513EB97A2C482B7CD197DE910934'
+ }
+ TestFrame {
+ time: 96
+ hash: 'FAF0FD681E60BB2489099F5DF772B6CD'
+ }
+ TestFrame {
+ time: 112
+ hash: 'A863D3E346F94785A3A392FDC91526EB'
+ }
+ TestFrame {
+ time: 128
+ hash: 'FDF328D3F6EB8410DA59A91345E41A44'
+ }
+ TestFrame {
+ time: 144
+ hash: '83514A3B10D5BE8F6C3B128D0F3E0B1C'
+ }
+ TestFrame {
+ time: 160
+ hash: 'EAD0EAE76CD00189075964671EFFBAEA'
+ }
+ TestFrame {
+ time: 176
+ hash: '24D2457FCD51490FDA23071BF9929D12'
+ }
+ TestFrame {
+ time: 192
+ hash: '1478683446CF543DACBE31D0B76A98A6'
+ }
+ TestFrame {
+ time: 208
+ hash: '99F7DA1F31FE920F6C02ADD4042AE925'
+ }
+ TestFrame {
+ time: 224
+ hash: '22DEF892006CF66667770B0F17BAF6C0'
+ }
+ TestFrame {
+ time: 240
+ hash: '6A36D5A77099BFD58BAF285478FF04E4'
+ }
+ TestFrame {
+ time: 256
+ hash: '6258150666B59B20AB476724C07FC20C'
+ }
+ TestFrame {
+ time: 272
+ hash: 'F1636315BC950A6DD400D9C7ED263B88'
+ }
+ TestFrame {
+ time: 288
+ hash: '18447EA8DC2E8DA956788E5B3CF3790A'
+ }
+ TestFrame {
+ time: 304
+ hash: '1D2A6E65997A73E9E670356C8E8B63B2'
+ }
+ TestFrame {
+ time: 320
+ hash: 'BED0242C0F9EF229D1392835286D5782'
+ }
+ TestFrame {
+ time: 336
+ hash: '88923C190E9E5BEADEF8A409C06DF9D6'
+ }
+ TestFrame {
+ time: 352
+ hash: '2D133E7EE60C97386F57838B3F0976C7'
+ }
+ TestFrame {
+ time: 368
+ hash: '85B1821CC50F2A9F3ED6944F792B7A2F'
+ }
+ TestFrame {
+ time: 384
+ hash: '395195716D76BC0BE7B2033ED37A7A1C'
+ }
+ TestFrame {
+ time: 400
+ hash: '243DBFFCF416926242BBCB7348974C4C'
+ }
+ TestFrame {
+ time: 416
+ hash: 'A755068679616D8AC65C2AA7431F2A19'
+ }
+ TestFrame {
+ time: 432
+ hash: 'E8249B35A47EB492CBDF2D91CC8426F0'
+ }
+ TestFrame {
+ time: 448
+ hash: '15F3DA1C0E6F0779B96859D51171DD27'
+ }
+ TestFrame {
+ time: 464
+ hash: '258C0C756AAC3DE743B43051F2AACE6B'
+ }
+ TestFrame {
+ time: 480
+ hash: 'A58B9FDF301D72B2CC5C93934CC8927B'
+ }
+ TestFrame {
+ time: 496
+ hash: 'A9181D30870D472521F8904818CE520F'
+ }
+ TestFrame {
+ time: 512
+ hash: '7F9E94069CCF3897C26A71BD7BECD903'
+ }
+ TestFrame {
+ time: 528
+ hash: 'BDF305C2F46CDB86DBF57B1E0CC5A65B'
+ }
+ TestFrame {
+ time: 544
+ hash: 'FE5B6865D7E4FC7D1D42C1E74F8666F7'
+ }
+ TestFrame {
+ time: 560
+ hash: '734F0DE45A6E34C9EAB7EF606196F96A'
+ }
+ TestFrame {
+ time: 576
+ hash: '02A361C4534FDF7F286DC3E6DC23275C'
+ }
+ TestFrame {
+ time: 592
+ hash: 'E649155AD69999C14B92F6561E4D1185'
+ }
+ TestFrame {
+ time: 608
+ hash: '01AF177084FAB755D622973F64B92018'
+ }
+ TestFrame {
+ time: 624
+ hash: '097CC4A082DFAB995D213A3A73883C97'
+ }
+ TestFrame {
+ time: 640
+ hash: 'D7B4239A3280B1EB8E885E3F422DF8E9'
+ }
+ TestFrame {
+ time: 656
+ hash: '59893977994E34E83F91E7CE3AD65D6D'
+ }
+ TestFrame {
+ time: 672
+ hash: 'B68E3FBB5CDCD6BD96DF7DEC558DB42B'
+ }
+ TestFrame {
+ time: 688
+ hash: '94AD0580648F36A1E18A9EA7E249B04D'
+ }
+ TestFrame {
+ time: 704
+ hash: '750A4C01D2F5806A89A1C6CC6A9B9A68'
+ }
+ TestFrame {
+ time: 720
+ hash: '4F109F50F388F1BFA4BC6B03B3E6E514'
+ }
+ TestFrame {
+ time: 736
+ hash: 'C6168D5CF27A533E8EE636637667BE47'
+ }
+ TestFrame {
+ time: 752
+ hash: 'F8120547BED987AA34C00DA5A01A4D1E'
+ }
+ TestFrame {
+ time: 768
+ hash: 'CBFF526136FA2C128C8B898FBBEF9E5C'
+ }
+ TestFrame {
+ time: 784
+ hash: 'F29E52398FAB1A239A63DF4C32F2FC69'
+ }
+ TestFrame {
+ time: 800
+ hash: '7178BFE86FD2FD513218B33760460F8D'
+ }
+ TestFrame {
+ time: 816
+ hash: 'CA83285BC8AC633403896FE976896EB0'
+ }
+ TestFrame {
+ time: 832
+ hash: '96BA486C09CC69D5AA38C46C00DF1181'
+ }
+ TestFrame {
+ time: 848
+ hash: 'B88EAB335842787869F4A14824C19DD8'
+ }
+ TestFrame {
+ time: 864
+ hash: '065AA59012729E1E1A246A2083142690'
+ }
+ TestFrame {
+ time: 880
+ hash: 'DD0E98C8398861002C5F178C5F9F612D'
+ }
+ TestFrame {
+ time: 896
+ hash: '04192C2B545948048ECCF4D81BBDE198'
+ }
+ TestMouse {
+ time: 912
+ type: 2
+ button: 1
+ buttons: 1
+ globalPos: '1739,207'
+ pos: '75,95'
+ }
+ TestFrame {
+ time: 912
+ hash: 'BB7502C7208281EF9FD41714AB88A1A8'
+ }
+ TestFrame {
+ time: 928
+ hash: '5397195471890D08B703DCA101E5BC7C'
+ }
+ TestFrame {
+ time: 944
+ hash: '4C678CDBEBB2FFD2CBF012CA77800CDE'
+ }
+ TestFrame {
+ time: 960
+ hash: '0D7A34ECD0C7F52B2C015037BF1902C6'
+ }
+ TestMouse {
+ time: 976
+ type: 3
+ button: 1
+ buttons: 0
+ globalPos: '1739,207'
+ pos: '75,95'
+ }
+ TestFrame {
+ time: 976
+ hash: 'FD9D5048BE749AC4369FDA2D018B43AE'
+ }
+ TestFrame {
+ time: 992
+ hash: '93EE03795CD57AE6F7FE3A020B039AD4'
+ }
+ TestFrame {
+ time: 1008
+ hash: '5E1118963F219C39761CA7FBF564A9CA'
+ }
+ TestFrame {
+ time: 1024
+ hash: '8F40038741903150136170503649D941'
+ }
+ TestFrame {
+ time: 1040
+ hash: 'B087B7D0AA6224821F8E18718FF5E77D'
+ }
+ TestFrame {
+ time: 1056
+ hash: 'AA46B04A3C67DC772265ED2901955565'
+ }
+ TestFrame {
+ time: 1072
+ hash: 'AC024BF2AEB4BECDF31A09FE0A6DB8F3'
+ }
+ TestFrame {
+ time: 1088
+ hash: '13745A174E4D06E2108A5BF125BA50CC'
+ }
+ TestFrame {
+ time: 1104
+ hash: 'BD972F0D8E230ECA0B3FEA1B8C960C08'
+ }
+ TestFrame {
+ time: 1120
+ hash: 'CBDBEC802A58E7CED0CF45B3AB0BC0BA'
+ }
+ TestFrame {
+ time: 1136
+ hash: '5128584C50305C7D218B81B8367FA3D5'
+ }
+ TestFrame {
+ time: 1152
+ hash: 'A71461D3593F3685620668916DE870BD'
+ }
+ TestFrame {
+ time: 1168
+ hash: '74EBAC8F32CF044B58D9883DBCD9A722'
+ }
+ TestFrame {
+ time: 1184
+ hash: 'FEDC5B638F339B90FE59B478721E65B7'
+ }
+ TestFrame {
+ time: 1200
+ hash: 'BCB8C7159F54C353551DD3BFF3203966'
+ }
+ TestFrame {
+ time: 1216
+ hash: '4E9B083075BC5E9287A8ABC982778B56'
+ }
+ TestFrame {
+ time: 1232
+ hash: '1D6F02AA99AFA47D77FC49AB894B365A'
+ }
+ TestFrame {
+ time: 1248
+ hash: 'A204FEEC783B3B05DE4C209C21745826'
+ }
+ TestFrame {
+ time: 1264
+ hash: '665A2A8FF00B9663157802767F504754'
+ }
+ TestFrame {
+ time: 1280
+ hash: '624FB09EBE60CB87D767FAF8D2420B1E'
+ }
+ TestFrame {
+ time: 1296
+ hash: 'E5AF0CDC33F3275A25ABB09E9165F310'
+ }
+ TestFrame {
+ time: 1312
+ hash: '02BAFB5A81CA66F7670AC93DE5123860'
+ }
+ TestFrame {
+ time: 1328
+ hash: 'E7AA6374C73832E57CEB2427A1E258AA'
+ }
+ TestFrame {
+ time: 1344
+ hash: 'B5ABD0DFF1AB076FAAC7CC226E83F5D0'
+ }
+ TestFrame {
+ time: 1360
+ hash: 'B759ACC35BCCFF8EFC2E6FE276DDC0F7'
+ }
+ TestFrame {
+ time: 1376
+ hash: 'CE52E18C1F7732768779863B45314FF5'
+ }
+ TestFrame {
+ time: 1392
+ hash: '99D30652559DD6931E0C95543EEAA149'
+ }
+ TestFrame {
+ time: 1408
+ hash: 'FFBD9A00E05E085B89296D19D5CAEC57'
+ }
+ TestFrame {
+ time: 1424
+ hash: '9C9D658B9C25602816B8066BF19105DB'
+ }
+ TestFrame {
+ time: 1440
+ hash: '2B7FD058E6601E22A30BB7106B1C683B'
+ }
+ TestFrame {
+ time: 1456
+ hash: 'F4C7E26B19EE0A3E7C9688685EB7BD05'
+ }
+ TestFrame {
+ time: 1472
+ hash: '0DC6D593BCEFF56B7F81F2A49D37FEFB'
+ }
+ TestFrame {
+ time: 1488
+ hash: '9BFD7AD5091CCBDDE43C593E133A7B10'
+ }
+ TestFrame {
+ time: 1504
+ hash: '2703B617937914A90EA42EBF249D79EE'
+ }
+ TestFrame {
+ time: 1520
+ hash: 'B77E2983138254016C4CCA53100F46FA'
+ }
+ TestFrame {
+ time: 1536
+ hash: '60C4DD24187D1281081479E586F02B37'
+ }
+ TestFrame {
+ time: 1552
+ hash: '62F2511ABD99EF1231C9FA4B91D4ABFE'
+ }
+ TestFrame {
+ time: 1568
+ hash: 'E309B3353FD174E883D309571CADDC98'
+ }
+ TestFrame {
+ time: 1584
+ hash: '1E2D6A134C7B12DDE551B148EF4F088C'
+ }
+ TestFrame {
+ time: 1600
+ hash: 'E5DC5450604A491CC24A0DCF5C278B58'
+ }
+ TestFrame {
+ time: 1616
+ hash: 'C8DAE97C10E1962C1E6A51AB3AB8579E'
+ }
+ TestFrame {
+ time: 1632
+ hash: '4E1B7E06F55FB084080689B474F1FE1D'
+ }
+ TestFrame {
+ time: 1648
+ hash: 'B4639C907FA937BF15FAC62421170CD8'
+ }
+ TestFrame {
+ time: 1664
+ hash: 'C250208A0CAEB5F6CB4D3AAC3D7D350B'
+ }
+ TestFrame {
+ time: 1680
+ hash: 'A73351EABECF0D71149EFE31F197413E'
+ }
+ TestFrame {
+ time: 1696
+ hash: '479425F1B7AFF79E4DFB7FCA534AF018'
+ }
+ TestFrame {
+ time: 1712
+ hash: '046D0F0040A52D1F26BA9F7C5DE06EF4'
+ }
+ TestFrame {
+ time: 1728
+ hash: '655778BF13C6080903150B0EB43A7EDC'
+ }
+ TestFrame {
+ time: 1744
+ hash: '72DA0BBE81514870655FDD3354ADAC60'
+ }
+ TestFrame {
+ time: 1760
+ hash: 'DEFE0BDF675C65FFF55AAACED1E4DAE7'
+ }
+ TestFrame {
+ time: 1776
+ hash: 'C988628B6C3D3780E9A865C7694926CD'
+ }
+ TestFrame {
+ time: 1792
+ hash: '5AB17563655231089EDD986FF13D6012'
+ }
+ TestFrame {
+ time: 1808
+ hash: 'C1ADFF1D2E5800ED466D1691D3B17382'
+ }
+ TestFrame {
+ time: 1824
+ hash: '70129BA01FBB19592B9DC0D0A3B3E7DF'
+ }
+ TestFrame {
+ time: 1840
+ hash: '0000829EF7ED908BF430D42904D59CC2'
+ }
+ TestFrame {
+ time: 1856
+ hash: '843D2927F50AB87B4A86B7A6AAEED91F'
+ }
+ TestFrame {
+ time: 1872
+ hash: 'DA86D21756025E7DE8050586D5E2A1F8'
+ }
+ TestFrame {
+ time: 1888
+ hash: '48DD1BD6580133B0793FEE327EA4F1E6'
+ }
+ TestFrame {
+ time: 1904
+ hash: 'F0618193DCD0BA2837249515A1898B1C'
+ }
+ TestFrame {
+ time: 1920
+ hash: 'A530184E57251065286C0CBBA7301E9C'
+ }
+ TestFrame {
+ time: 1936
+ hash: '64A1D7203973D65DD342793007A61C58'
+ }
+ TestFrame {
+ time: 1952
+ hash: '5B830DFC6BA442772DE87D75D5A578DE'
+ }
+ TestFrame {
+ time: 1968
+ hash: '5563B056B0409B65F60DD16DD0DD890E'
+ }
+ TestFrame {
+ time: 1984
+ hash: 'B8BCF9AD2CA8720C11563A23D8280804'
+ }
+ TestFrame {
+ time: 2000
+ hash: '8C0FCDA4F8956394C53FC4BA18CAA850'
+ }
+}
diff --git a/tests/auto/declarative/visual/colorAnimation/manifest-play.xml b/tests/auto/declarative/visual/colorAnimation/manifest-play.xml
new file mode 100644
index 0000000..8e3de2e
--- /dev/null
+++ b/tests/auto/declarative/visual/colorAnimation/manifest-play.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestLog>
+ <TestFullFrame time="30" frameId="0"/>
+ <TestMouse time="480" type="2" button="1" buttons="1" globalPos="93,129" pos="89,102"/>
+ <TestMouse time="570" type="3" button="1" buttons="0" globalPos="93,129" pos="89,102"/>
+ <TestFrame time="630" hash="D42762ECD293C6922C5F9593126DE636"/>
+ <TestFrame time="660" hash="8962505FCCB2E7559A99A8EDD325A82B"/>
+ <TestFrame time="690" hash="6812EFDA80607D4FA05CD3A5077F8EF7"/>
+ <TestFrame time="720" hash="A116DF73809679C1C5F9261F49B989F0"/>
+ <TestFrame time="750" hash="DC1B9D40AEE306171AD6625DDCA4EB45"/>
+ <TestFrame time="780" hash="B2DAF0E4C32080229664A8B0A155DE3B"/>
+ <TestFrame time="810" hash="496677B0D8707B91566D1244C46D50DB"/>
+ <TestFrame time="840" hash="A6558D8B0D1FB1D11BEBE36C078386CE"/>
+ <TestFrame time="870" hash="601436BB436D391B0BD5FCC289666208"/>
+ <TestFrame time="900" hash="8CF3CF9EAD875497870CC7C1035802DC"/>
+ <TestFrame time="930" hash="FF6BA6BAC30DADD3DBBFD96F127EB1FE"/>
+ <TestFrame time="960" hash="1D97A2A6890078DCF4CE9E508E5F9F08"/>
+ <TestFrame time="990" hash="58C9116FDDD03DD036820EFCD0DCD392"/>
+ <TestFrame time="1020" hash="E51287B911C140B41D350FCB2091AB80"/>
+ <TestFrame time="1050" hash="7B107411B436FABE469A069E6E5B0C3C"/>
+ <TestFrame time="1080" hash="9D1CB0E58F2BD00DDA0FB463F6BFF526"/>
+ <TestFrame time="1110" hash="35AB7788489B79E5A5C6F2BE11AFC9E1"/>
+ <TestFrame time="1140" hash="C82177AC4A7A497469292C5F0F8C4913"/>
+ <TestFrame time="1170" hash="18763D1B911FDC524DB9E7B2569FE984"/>
+ <TestFrame time="1200" hash="27F63572AAEF6D835272D5D65FCF608B"/>
+ <TestFrame time="1230" hash="585727CAEC1F83ADB9E422BAF058A622"/>
+ <TestFrame time="1260" hash="2C3BBFEFBE6E5FDA1905E9F50985E1B4"/>
+ <TestFrame time="1290" hash="81675C4ABB2696D960BC5F204F05F16B"/>
+ <TestFrame time="1320" hash="6D0F3CCC06EF1E3A895ECC9A8DE90039"/>
+ <TestFrame time="1350" hash="0BF36093CCAEA8BDAE96D4939A8DDE20"/>
+ <TestFrame time="1380" hash="5A1CBC68AB59977B65492B0F8A664418"/>
+ <TestFrame time="1410" hash="C35831A8C59D56193CED2C4AADB4DFCE"/>
+ <TestFrame time="1440" hash="ED15973425A8B8528896B344A61393AA"/>
+ <TestFrame time="1470" hash="EA8FC02A8606680C089F0C0CE454ABE3"/>
+ <TestFrame time="1500" hash="CFB5CFBA0A0BC62C0D03908FB9599A8E"/>
+ <TestFrame time="1530" hash="09FAA04AFB50B48BD6A83F9E25F9DDDB"/>
+ <TestFrame time="1560" hash="0FDD0B8CDCCEB78C7C67AB0F5EA74D6A"/>
+ <TestFrame time="1590" hash="058D26146879900B5E5CCE05AE38BA0E"/>
+ <TestFrame time="1620" hash="80F9074C50F967C99D4C3A3FF9EC3E71"/>
+ <TestFrame time="1650" hash="AD9BDCEEC1C058D6B658C5BA0D0BC1F0"/>
+ <TestFrame time="1680" hash="AC14DF5458F91001181154F8C68BCE2B"/>
+ <TestFrame time="1710" hash="AE9225263E4C8E75E4D0F1D7192B4260"/>
+ <TestFrame time="1740" hash="D3D50F1B7F476E79E5B99E0E6D4CF827"/>
+ <TestFrame time="1770" hash="A1367445C5232ACCBF4904A415416EA4"/>
+ <TestFrame time="1800" hash="A21C0F1DA9B64A5B000558BA1F2E495D"/>
+ <TestFrame time="1830" hash="61AF477B6FB22E38E698375EA5793D22"/>
+ <TestFrame time="1860" hash="B3AD3501D527939CEAA4F124AB10B2DF"/>
+ <TestFrame time="1890" hash="0C2BF65A43AE87AFB0068F9FA4A74707"/>
+ <TestFrame time="1920" hash="5B7F96C797BEE4FD1B04538DE5549C1B"/>
+ <TestFrame time="1950" hash="4C861E936A3F1AFE323395E30174F8CC"/>
+ <TestFrame time="1980" hash="87F1966E5B0E924EB7CEED5520D120BF"/>
+ <TestFrame time="2010" hash="1980755E0D80469D4DC0B9B0309F2DEB"/>
+ <TestFrame time="2040" hash="38A7ACC2E5607FC0965B7B376A0D3524"/>
+ <TestFrame time="2070" hash="4434746833EFF5A3A76491024763990A"/>
+ <TestFrame time="2100" hash="A8BAD928F92E851B45723068B7FEF739"/>
+ <TestFrame time="2130" hash="A96F5C522C0ECA5C78E982E4235218CB"/>
+ <TestFrame time="2160" hash="135F0EFEDE2832B76F49966EBD629879"/>
+ <TestFrame time="2190" hash="A51C6E443413F184CAAE8A7F98A369C8"/>
+ <TestFrame time="2220" hash="62A7521EE62E6A2543B3141C1EFCE72A"/>
+ <TestFrame time="2250" hash="D416A41125659167B3E6AD68F66F6E64"/>
+ <TestFrame time="2280" hash="0F653B5E965665A43F50437724DC704C"/>
+ <TestFrame time="2310" hash="13A6E2485179501FF3AA8BA91A5050B4"/>
+ <TestFrame time="2340" hash="9423475D3832FBABEC56B80FA9161020"/>
+ <TestFrame time="2370" hash="497B21108A6CB127DB066B32D06D992A"/>
+ <TestFrame time="2400" hash="22F01CB9B4F8FF01410566A61E281373"/>
+ <TestFrame time="2430" hash="A099640BC088E14E20585CB87FC5C6F1"/>
+ <TestFrame time="2460" hash="AC2954553C333EA1D524CE51CD35958A"/>
+ <TestFrame time="2490" hash="771E882CC788BECAA82E71E6FBAB150D"/>
+ <TestFrame time="2520" hash="42CEDA45D88A8D2B3DA5B749F4C3C1BF"/>
+ <TestFrame time="2550" hash="C6E1F91B917E47246E012D1B203E0DC2"/>
+ <TestFrame time="2580" hash="EFB3E57CF265B6E36AA4DF72771D119C"/>
+ <TestFrame time="2610" hash="657FC7FD496E5A2FC84F63930E0D1DE3"/>
+</TestLog>
diff --git a/tests/auto/declarative/visual/easing/easing.qml b/tests/auto/declarative/visual/easing/easing.qml
new file mode 100644
index 0000000..7bd6c8f
--- /dev/null
+++ b/tests/auto/declarative/visual/easing/easing.qml
@@ -0,0 +1,186 @@
+import Qt 4.6
+
+Rect {
+ id: item
+ width: 600
+ height: layout.height
+ color: "white"
+ resources: [
+ ListModel {
+ id: easingtypes
+ ListElement {
+ type: "easeNone"
+ }
+ ListElement {
+ type: "easeInQuad"
+ }
+ ListElement {
+ type: "easeOutQuad"
+ }
+ ListElement {
+ type: "easeInOutQuad"
+ }
+ ListElement {
+ type: "easeOutInQuad"
+ }
+ ListElement {
+ type: "easeInCubic"
+ }
+ ListElement {
+ type: "easeOutCubic"
+ }
+ ListElement {
+ type: "easeInOutCubic"
+ }
+ ListElement {
+ type: "easeOutInCubic"
+ }
+ ListElement {
+ type: "easeInQuart"
+ }
+ ListElement {
+ type: "easeOutQuart"
+ }
+ ListElement {
+ type: "easeInOutQuart"
+ }
+ ListElement {
+ type: "easeOutInQuart"
+ }
+ ListElement {
+ type: "easeInQuint"
+ }
+ ListElement {
+ type: "easeOutQuint"
+ }
+ ListElement {
+ type: "easeInOutQuint"
+ }
+ ListElement {
+ type: "easeOutInQuint"
+ }
+ ListElement {
+ type: "easeInSine"
+ }
+ ListElement {
+ type: "easeOutSine"
+ }
+ ListElement {
+ type: "easeInOutSine"
+ }
+ ListElement {
+ type: "easeOutInSine"
+ }
+ ListElement {
+ type: "easeInExpo"
+ }
+ ListElement {
+ type: "easeOutExpo"
+ }
+ ListElement {
+ type: "easeInOutExpo"
+ }
+ ListElement {
+ type: "easeOutInExpo"
+ }
+ ListElement {
+ type: "easeInCirc"
+ }
+ ListElement {
+ type: "easeOutCirc"
+ }
+ ListElement {
+ type: "easeInOutCirc"
+ }
+ ListElement {
+ type: "easeOutInCirc"
+ }
+ ListElement {
+ type: "easeInElastic"
+ }
+ ListElement {
+ type: "easeOutElastic"
+ }
+ ListElement {
+ type: "easeInOutElastic"
+ }
+ ListElement {
+ type: "easeOutInElastic"
+ }
+ ListElement {
+ type: "easeInBack"
+ }
+ ListElement {
+ type: "easeOutBack"
+ }
+ ListElement {
+ type: "easeInOutBack"
+ }
+ ListElement {
+ type: "easeOutInBack"
+ }
+ ListElement {
+ type: "easeOutBounce"
+ }
+ ListElement {
+ type: "easeInBounce"
+ }
+ ListElement {
+ type: "easeInOutBounce"
+ }
+ ListElement {
+ type: "easeOutInBounce"
+ }
+ }
+ ]
+ VerticalLayout {
+ id: layout
+ anchors.left: item.left
+ anchors.right: item.right
+ Repeater {
+ dataSource: easingtypes
+ Component {
+ Text {
+ id: text
+ text: type
+ height: 18
+ font.italic: true
+ color: "black"
+ states: [
+ State {
+ name: "from"
+ when: !mouse.pressed
+ SetProperties {
+ target: text
+ x: 0
+ }
+ },
+ State {
+ name: "to"
+ when: mouse.pressed
+ SetProperties {
+ target: text
+ x: item.width-100
+ }
+ }
+ ]
+ transitions: [
+ Transition {
+ fromState: "*"
+ toState: "to"
+ reversible: true
+ NumberAnimation {
+ properties: "x"
+ easing: type
+ }
+ }
+ ]
+ }
+ }
+ }
+ }
+ MouseRegion {
+ id: mouse
+ anchors.fill: layout
+ }
+}
diff --git a/tests/auto/declarative/visual/easing/image0.png b/tests/auto/declarative/visual/easing/image0.png
new file mode 100644
index 0000000..dbe03aa
--- /dev/null
+++ b/tests/auto/declarative/visual/easing/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/easing/manifest-play.xml b/tests/auto/declarative/visual/easing/manifest-play.xml
new file mode 100644
index 0000000..3c84452
--- /dev/null
+++ b/tests/auto/declarative/visual/easing/manifest-play.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestLog>
+ <TestFullFrame time="30" frameId="0"/>
+ <TestMouse time="480" type="2" button="1" buttons="1" globalPos="487,444" pos="483,417"/>
+ <TestFrame time="510" hash="83FB660D6CABAAFCB27C6EC001B14110"/>
+ <TestFrame time="540" hash="27FCD68F610024000CA6D3A8D9F0CF09"/>
+ <TestFrame time="570" hash="14728A6160AF51FCA8562D6A020BBA79"/>
+ <TestFrame time="600" hash="BDDB81682B30A6918927ACB59608D14E"/>
+ <TestFrame time="630" hash="03F16A41DCD31E41935E54763757C6D5"/>
+ <TestFrame time="660" hash="2D04EA1EBEDC77CF5D42A1B491A57EA6"/>
+ <TestFrame time="690" hash="762C36B33B75F24427CA45F4AD06B64E"/>
+ <TestFrame time="720" hash="AA02624CC889C95A99BBE58365F4FAAD"/>
+ <TestFrame time="750" hash="0529200188188708A18CE0F931780DBD"/>
+ <TestFrame time="780" hash="56036B63822AF34F26B149069CD189C6"/>
+ <TestFrame time="810" hash="CFFC6583E2BA1E47E1439BED6FE69665"/>
+ <TestFrame time="840" hash="25A1AFDC945D5264FF0337A421143A3C"/>
+ <TestFrame time="870" hash="601FA34B5E15E7B87E6490580C2E1858"/>
+ <TestFrame time="900" hash="1CA085F6CB8509957A51F6182F7F5443"/>
+ <TestFrame time="930" hash="09B5849DF18F6817F7450230DFEC0E95"/>
+ <TestFrame time="960" hash="15D212C1291DF97E3DEA5AA8793AD5CB"/>
+ <TestFrame time="990" hash="D6E42E8F4D06BDDBAE998079AC2C79AD"/>
+ <TestFrame time="1020" hash="7016B5C435006D859AB087A73299B6D5"/>
+</TestLog>
diff --git a/tests/auto/declarative/visual/easing/manifest.xml b/tests/auto/declarative/visual/easing/manifest.xml
new file mode 100644
index 0000000..3c84452
--- /dev/null
+++ b/tests/auto/declarative/visual/easing/manifest.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestLog>
+ <TestFullFrame time="30" frameId="0"/>
+ <TestMouse time="480" type="2" button="1" buttons="1" globalPos="487,444" pos="483,417"/>
+ <TestFrame time="510" hash="83FB660D6CABAAFCB27C6EC001B14110"/>
+ <TestFrame time="540" hash="27FCD68F610024000CA6D3A8D9F0CF09"/>
+ <TestFrame time="570" hash="14728A6160AF51FCA8562D6A020BBA79"/>
+ <TestFrame time="600" hash="BDDB81682B30A6918927ACB59608D14E"/>
+ <TestFrame time="630" hash="03F16A41DCD31E41935E54763757C6D5"/>
+ <TestFrame time="660" hash="2D04EA1EBEDC77CF5D42A1B491A57EA6"/>
+ <TestFrame time="690" hash="762C36B33B75F24427CA45F4AD06B64E"/>
+ <TestFrame time="720" hash="AA02624CC889C95A99BBE58365F4FAAD"/>
+ <TestFrame time="750" hash="0529200188188708A18CE0F931780DBD"/>
+ <TestFrame time="780" hash="56036B63822AF34F26B149069CD189C6"/>
+ <TestFrame time="810" hash="CFFC6583E2BA1E47E1439BED6FE69665"/>
+ <TestFrame time="840" hash="25A1AFDC945D5264FF0337A421143A3C"/>
+ <TestFrame time="870" hash="601FA34B5E15E7B87E6490580C2E1858"/>
+ <TestFrame time="900" hash="1CA085F6CB8509957A51F6182F7F5443"/>
+ <TestFrame time="930" hash="09B5849DF18F6817F7450230DFEC0E95"/>
+ <TestFrame time="960" hash="15D212C1291DF97E3DEA5AA8793AD5CB"/>
+ <TestFrame time="990" hash="D6E42E8F4D06BDDBAE998079AC2C79AD"/>
+ <TestFrame time="1020" hash="7016B5C435006D859AB087A73299B6D5"/>
+</TestLog>
diff --git a/tests/auto/declarative/visual/easing/pics/qtlogo.png b/tests/auto/declarative/visual/easing/pics/qtlogo.png
new file mode 100644
index 0000000..399bd0b
--- /dev/null
+++ b/tests/auto/declarative/visual/easing/pics/qtlogo.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flickable/Day.qml b/tests/auto/declarative/visual/flickable/Day.qml
new file mode 100644
index 0000000..549a9a0
--- /dev/null
+++ b/tests/auto/declarative/visual/flickable/Day.qml
@@ -0,0 +1,27 @@
+import Qt 4.6
+
+Rect {
+ property string day
+
+ width: 200
+ height: 300
+ radius: 7
+ pen.color: "black"
+ id: Page
+ Image {
+ x: 10
+ y: 10
+ source: "cork.jpg"
+ opaque: true
+ }
+ Text {
+ x: 20
+ y: 20
+ height: 40
+ font.size: 14
+ font.bold: true
+ text: day
+ style: "Outline"
+ styleColor: "#dedede"
+ }
+}
diff --git a/tests/auto/declarative/visual/flickable/cork.jpg b/tests/auto/declarative/visual/flickable/cork.jpg
new file mode 100644
index 0000000..6dc3a3f
--- /dev/null
+++ b/tests/auto/declarative/visual/flickable/cork.jpg
Binary files differ
diff --git a/tests/auto/declarative/visual/flickable/flickable.qml b/tests/auto/declarative/visual/flickable/flickable.qml
new file mode 100644
index 0000000..24931de
--- /dev/null
+++ b/tests/auto/declarative/visual/flickable/flickable.qml
@@ -0,0 +1,55 @@
+import Qt 4.6
+
+Rect {
+ color: "lightSteelBlue"
+ width: 600
+ height: 300
+ ListModel {
+ id: List
+ ListElement {
+ name: "Sunday"
+ dayColor: "#808080"
+ }
+ ListElement {
+ name: "Monday"
+ dayColor: "blue"
+ }
+ ListElement {
+ name: "Tuesday"
+ dayColor: "yellow"
+ }
+ ListElement {
+ name: "Wednesday"
+ dayColor: "purple"
+ }
+ ListElement {
+ name: "Thursday"
+ dayColor: "blue"
+ }
+ ListElement {
+ name: "Friday"
+ dayColor: "green"
+ }
+ ListElement {
+ name: "Saturday"
+ dayColor: "orange"
+ }
+ }
+ Flickable {
+ id: Flick
+ anchors.fill: parent
+ viewportWidth: Lay.width
+ HorizontalLayout {
+ id: Lay
+ Repeater {
+ dataSource: List
+ Component {
+ Day {
+ day: name
+ color: dayColor
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/flipable/flipable.xml b/tests/auto/declarative/visual/flipable/flipable.xml
new file mode 100644
index 0000000..9288acc
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/flipable.xml
@@ -0,0 +1,138 @@
+<Rect color="lightsteelblue" height="400" width="500">
+ <VisualModel id="MyVisualModel">
+ <model>
+ <ListModel id="ListModel">
+ <Person>
+ <name>Jessica</name>
+ <picture>face.png</picture>
+ </Person>
+ <Person>
+ <name>John</name>
+ <picture>photo0.png</picture>
+ </Person>
+ <Person>
+ <name>Susan</name>
+ <picture>photo10.png</picture>
+ </Person>
+ <Person>
+ <name>Samantha</name>
+ <picture>photo1.png</picture>
+ </Person>
+ <Person>
+ <name>Mark</name>
+ <picture>photo2.png</picture>
+ </Person>
+ <Person>
+ <name>Sarah</name>
+ <picture>photo3.png</picture>
+ </Person>
+ <Person>
+ <name>Pam</name>
+ <picture>photo4.png</picture>
+ </Person>
+ <Person>
+ <name>April</name>
+ <picture>photo5.png</picture>
+ </Person>
+ <Person>
+ <name>Tarryn</name>
+ <picture>photo6.png</picture>
+ </Person>
+ <Person>
+ <name>Geoff</name>
+ <picture>photo7.png</picture>
+ </Person>
+ <Person>
+ <name>Bill</name>
+ <picture>photo8.png</picture>
+ </Person>
+ <Person>
+ <name>Stuart</name>
+ <picture>photo9.png</picture>
+ </Person>
+ </ListModel>
+ </model>
+ <delegate>
+ <Package>
+ <Flipable id="MeRect" width="100" height="100">
+ <properties>
+ <Property name="r" type="Real" />
+ </properties>
+ <transform>
+ <Perspective angle="90" x="50" y="50" aspect="1" scale="256"/>
+ <Axis xStart="50" xEnd="50" yStart="0" yEnd="1" rotation="{MeRect.r}" />
+ </transform>
+
+ <front>
+ <Rect radius="5" color="red" width="100" height="100">
+ <Text text="{name}" />
+ </Rect>
+ </front>
+
+ <back>
+ <Rect radius="5" color="red" width="100" height="100">
+ <Image anchors.horizontalCenter="{parent.horizontalCenter}" anchors.verticalCenter="{parent.verticalCenter}" file="{picture}" />
+ </Rect>
+ </back>
+ </Flipable>
+
+ <Item Package.name="leftBox" id="LeftBox"
+ width="100" height="100">
+ <Rect opacity="0.1" width="80" height="80" radius="4"
+ color="grey" x="10" y="10">
+ <Text text="{name}" />
+ <MouseRegion anchors.fill="{parent}" onClick="if(MyItem.currentState=='left') MyItem.currentState='right'; else MyItem.currentState='left';" />
+ </Rect>
+ </Item>
+ <Item Package.name="rightBox" id="RightBox"
+ width="100" height="100">
+ <Rect opacity="0.1" width="80" height="80" radius="4"
+ color="grey" x="10" y="10">
+ <Text text="{name}" />
+ <MouseRegion anchors.fill="{parent}" onClick="if(MyItem.currentState=='left') MyItem.currentState='right'; else MyItem.currentState='left';" />
+ </Rect>
+ </Item>
+ <Item id="MyItem">
+ <states>
+ <State name="left">
+ <SetProperty target="{MeRect}" property="moveToParent" value="{LeftBox}" />
+ </State>
+ <State name="right">
+ <SetProperty target="{MeRect}" property="moveToParent" value="{RightBox}" />
+ <SetProperty target="{MeRect}" property="r" value="180" />
+ </State>
+ </states>
+ <transitions>
+ <Transition fromState="*" toState="*">
+ <NumberAnimation property="r" duration="500" />
+ <SerialAnimation>
+ <SetPropertyAction target="{MeRect}" property="moveToParent" value="{Bounce}" />
+ <ParallelAnimation>
+ <NumberAnimation target="{MeRect}" properties="x" to="0" duration="250" />
+ <NumberAnimation target="{MeRect}" properties="y" to="0" easing="easeInQuad" duration="250"/>
+ </ParallelAnimation>
+ <SetPropertyAction target="{MeRect}" property="moveToParent" />
+ <ParallelAnimation>
+ <NumberAnimation target="{MeRect}" properties="x" to="0" duration="250"/>
+ <NumberAnimation target="{MeRect}" properties="y" to="0" easing="easeOutQuad" duration="250"/>
+ </ParallelAnimation>
+ </SerialAnimation>
+ </Transition>
+ </transitions>
+ <currentState>left</currentState>
+ </Item>
+
+ </Package>
+ </delegate>
+ </VisualModel>
+
+ <Item width="800" height="400" clip="true">
+ <Item z="100" id="Bounce" x="200" y="300" />
+ <ListView id="MyListView" width="400" height="400" x="400"
+ model="{MyVisualModel.parts.rightBox}" />
+
+ <ListView id="MyListView2" width="400" height="400"
+ model="{MyVisualModel.parts.leftBox}" />
+ </Item>
+
+</Rect>
diff --git a/tests/auto/declarative/visual/flipable/image0.png b/tests/auto/declarative/visual/flipable/image0.png
new file mode 100644
index 0000000..affb8a5
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/manifest-play.xml b/tests/auto/declarative/visual/flipable/manifest-play.xml
new file mode 100644
index 0000000..81c08e4
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/manifest-play.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestLog>
+ <TestFullFrame time="30" frameId="0"/>
+ <TestMouse time="2040" type="2" button="1" buttons="1" globalPos="812,72" pos="65,45"/>
+ <TestMouse time="2100" type="3" button="1" buttons="0" globalPos="812,72" pos="65,45"/>
+ <TestFrame time="2130" hash="210454ECF70EEA9CA43DD391BC23178B"/>
+ <TestFrame time="2160" hash="F6612DAD879208F4AF100337271C445C"/>
+ <TestFrame time="2190" hash="C77FC41100D0B066F8F0BF4ABCF2F0BF"/>
+ <TestFrame time="2220" hash="1AB3A42E6FC271E049E6071A88AB8EE4"/>
+ <TestFrame time="2250" hash="DB3D5BC6882699DCC0208E4F5294B609"/>
+ <TestFrame time="2280" hash="DC5A8B44283DA4A81D3994B873FC5695"/>
+ <TestFrame time="2310" hash="5149027ECF7813BA64D3AB8FFE0265F5"/>
+ <TestFrame time="2340" hash="B7E801DF476C012AC3E9E48A9D4AA321"/>
+ <TestFrame time="2370" hash="F31A647A6A3EC86D7F16EB3147E5FC29"/>
+ <TestFrame time="2400" hash="FBB068C39D5188A175075667B584F1BE"/>
+ <TestFrame time="2430" hash="EC487AB66384A4A3A718D03555EBFD41"/>
+ <TestFrame time="2460" hash="C7AD11EB051B11ACBA38027013215A05"/>
+ <TestFrame time="2490" hash="AA38FD8E97EC394488274127630E7946"/>
+ <TestFrame time="2520" hash="1CA2B617AC966B54FFA1A61914F68A9D"/>
+ <TestFrame time="2550" hash="1726C0BAA930CAF282154F14AC2FD120"/>
+ <TestFrame time="2580" hash="58F8196148C8B64191AF7B897A811CFB"/>
+ <TestFrame time="2610" hash="D56D3FA137AA63A0215611450B40F3E0"/>
+ <TestFrame time="2640" hash="5E1BCDF996B2903D1EAEAC65E17783C2"/>
+</TestLog>
diff --git a/tests/auto/declarative/visual/flipable/manifest.xml b/tests/auto/declarative/visual/flipable/manifest.xml
new file mode 100644
index 0000000..81c08e4
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/manifest.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<TestLog>
+ <TestFullFrame time="30" frameId="0"/>
+ <TestMouse time="2040" type="2" button="1" buttons="1" globalPos="812,72" pos="65,45"/>
+ <TestMouse time="2100" type="3" button="1" buttons="0" globalPos="812,72" pos="65,45"/>
+ <TestFrame time="2130" hash="210454ECF70EEA9CA43DD391BC23178B"/>
+ <TestFrame time="2160" hash="F6612DAD879208F4AF100337271C445C"/>
+ <TestFrame time="2190" hash="C77FC41100D0B066F8F0BF4ABCF2F0BF"/>
+ <TestFrame time="2220" hash="1AB3A42E6FC271E049E6071A88AB8EE4"/>
+ <TestFrame time="2250" hash="DB3D5BC6882699DCC0208E4F5294B609"/>
+ <TestFrame time="2280" hash="DC5A8B44283DA4A81D3994B873FC5695"/>
+ <TestFrame time="2310" hash="5149027ECF7813BA64D3AB8FFE0265F5"/>
+ <TestFrame time="2340" hash="B7E801DF476C012AC3E9E48A9D4AA321"/>
+ <TestFrame time="2370" hash="F31A647A6A3EC86D7F16EB3147E5FC29"/>
+ <TestFrame time="2400" hash="FBB068C39D5188A175075667B584F1BE"/>
+ <TestFrame time="2430" hash="EC487AB66384A4A3A718D03555EBFD41"/>
+ <TestFrame time="2460" hash="C7AD11EB051B11ACBA38027013215A05"/>
+ <TestFrame time="2490" hash="AA38FD8E97EC394488274127630E7946"/>
+ <TestFrame time="2520" hash="1CA2B617AC966B54FFA1A61914F68A9D"/>
+ <TestFrame time="2550" hash="1726C0BAA930CAF282154F14AC2FD120"/>
+ <TestFrame time="2580" hash="58F8196148C8B64191AF7B897A811CFB"/>
+ <TestFrame time="2610" hash="D56D3FA137AA63A0215611450B40F3E0"/>
+ <TestFrame time="2640" hash="5E1BCDF996B2903D1EAEAC65E17783C2"/>
+</TestLog>
diff --git a/tests/auto/declarative/visual/flipable/pics/arrow.png b/tests/auto/declarative/visual/flipable/pics/arrow.png
new file mode 100644
index 0000000..997190d
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/arrow.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/face.png b/tests/auto/declarative/visual/flipable/pics/face.png
new file mode 100644
index 0000000..e9529ac
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/face.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo0.png b/tests/auto/declarative/visual/flipable/pics/photo0.png
new file mode 100644
index 0000000..26bbf5b
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo1.png b/tests/auto/declarative/visual/flipable/pics/photo1.png
new file mode 100644
index 0000000..2230f71
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo1.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo10.png b/tests/auto/declarative/visual/flipable/pics/photo10.png
new file mode 100644
index 0000000..119f142
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo10.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo2.png b/tests/auto/declarative/visual/flipable/pics/photo2.png
new file mode 100644
index 0000000..e3d58c1
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo2.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo3.png b/tests/auto/declarative/visual/flipable/pics/photo3.png
new file mode 100644
index 0000000..4b58df4
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo3.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo4.png b/tests/auto/declarative/visual/flipable/pics/photo4.png
new file mode 100644
index 0000000..4ed4bd2
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo4.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo5.png b/tests/auto/declarative/visual/flipable/pics/photo5.png
new file mode 100644
index 0000000..eb26704
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo5.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo6.png b/tests/auto/declarative/visual/flipable/pics/photo6.png
new file mode 100644
index 0000000..69875ce
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo6.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo7.png b/tests/auto/declarative/visual/flipable/pics/photo7.png
new file mode 100644
index 0000000..0b117c9
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo7.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo8.png b/tests/auto/declarative/visual/flipable/pics/photo8.png
new file mode 100644
index 0000000..b77b997
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo8.png
Binary files differ
diff --git a/tests/auto/declarative/visual/flipable/pics/photo9.png b/tests/auto/declarative/visual/flipable/pics/photo9.png
new file mode 100644
index 0000000..8a974d6
--- /dev/null
+++ b/tests/auto/declarative/visual/flipable/pics/photo9.png
Binary files differ
diff --git a/tests/auto/declarative/visual/pauseAnimation/data/raster/image0.png b/tests/auto/declarative/visual/pauseAnimation/data/raster/image0.png
new file mode 100644
index 0000000..8082422
--- /dev/null
+++ b/tests/auto/declarative/visual/pauseAnimation/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/pauseAnimation/data/raster/manifest.qml b/tests/auto/declarative/visual/pauseAnimation/data/raster/manifest.qml
new file mode 100644
index 0000000..40b300d
--- /dev/null
+++ b/tests/auto/declarative/visual/pauseAnimation/data/raster/manifest.qml
@@ -0,0 +1,1264 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+ TestFrame {
+ time: 16
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 32
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 48
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 64
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 80
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 96
+ hash: '336D31586171F22D541B989D24B95CBB'
+ }
+ TestFrame {
+ time: 112
+ hash: '6D63FB5C8A80F0280E88B2CDF8641BB9'
+ }
+ TestFrame {
+ time: 128
+ hash: 'EF8941674CB61F54853DC33652BB854E'
+ }
+ TestFrame {
+ time: 144
+ hash: 'B3F4A2165EC1EE971542B8EF89656CEA'
+ }
+ TestFrame {
+ time: 160
+ hash: 'AF3120FE262D2489C0ED33FBBEE1549F'
+ }
+ TestFrame {
+ time: 176
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 192
+ hash: '21F0B0437A999BBDE66A913032D495C2'
+ }
+ TestFrame {
+ time: 208
+ hash: '0809D32D5BC1BFCE199B1F39A1C68D4F'
+ }
+ TestFrame {
+ time: 224
+ hash: '022137587B39F5123835482178A1F1CF'
+ }
+ TestFrame {
+ time: 240
+ hash: '97566CE9558D13EA0780BCE233097B27'
+ }
+ TestFrame {
+ time: 256
+ hash: '96D79B07DA105B7F631ED61582B26F7E'
+ }
+ TestFrame {
+ time: 272
+ hash: 'F4732FF2DF93FE67CB850DEC34184924'
+ }
+ TestFrame {
+ time: 288
+ hash: '054E6E52F74A3E24F04E6AD0071F79F8'
+ }
+ TestFrame {
+ time: 304
+ hash: 'F541AF93A9FDE62E4BD1C91D30F91E65'
+ }
+ TestFrame {
+ time: 320
+ hash: 'C4F844EE71F23635BB3EC7375F6A134F'
+ }
+ TestFrame {
+ time: 336
+ hash: '3E52E06DB2BF78762BB9816FE6B105D9'
+ }
+ TestFrame {
+ time: 352
+ hash: 'D9604BE23A91327E6AB454609A9D4A13'
+ }
+ TestFrame {
+ time: 368
+ hash: 'DC98A9BDD99367C1E9B838D4BE489DCC'
+ }
+ TestFrame {
+ time: 384
+ hash: 'E87B00BFC2C2A75A4234EC02A057AD3A'
+ }
+ TestFrame {
+ time: 400
+ hash: '5BE4F5C67941EFB6FCEA363C79F1E321'
+ }
+ TestFrame {
+ time: 416
+ hash: '6CC9DE62A0C8FA5E42EAC1B01E99AC32'
+ }
+ TestFrame {
+ time: 432
+ hash: '62A7133012348F2EC3A388FB685ECC3F'
+ }
+ TestFrame {
+ time: 448
+ hash: '4AC43A03CC6F2020AB5F894D704092AC'
+ }
+ TestFrame {
+ time: 464
+ hash: 'C1A7B7D6D64AC5584C073C2881290696'
+ }
+ TestFrame {
+ time: 480
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 496
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 512
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 528
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 544
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 560
+ hash: 'C1A7B7D6D64AC5584C073C2881290696'
+ }
+ TestFrame {
+ time: 576
+ hash: 'C1A7B7D6D64AC5584C073C2881290696'
+ }
+ TestFrame {
+ time: 592
+ hash: '4AC43A03CC6F2020AB5F894D704092AC'
+ }
+ TestFrame {
+ time: 608
+ hash: '4AC43A03CC6F2020AB5F894D704092AC'
+ }
+ TestFrame {
+ time: 624
+ hash: 'FFD39C1122FE2F7877EF30591B539B40'
+ }
+ TestFrame {
+ time: 640
+ hash: '62A7133012348F2EC3A388FB685ECC3F'
+ }
+ TestFrame {
+ time: 656
+ hash: '45281A70021F81DBEF30334B1480DA1B'
+ }
+ TestFrame {
+ time: 672
+ hash: '6CC9DE62A0C8FA5E42EAC1B01E99AC32'
+ }
+ TestFrame {
+ time: 688
+ hash: '79EC710576427DF73DD03F39FBA6E2EB'
+ }
+ TestFrame {
+ time: 704
+ hash: '5BE4F5C67941EFB6FCEA363C79F1E321'
+ }
+ TestFrame {
+ time: 720
+ hash: '7D9096B1EB940C82A37BAF39EF3CCF3E'
+ }
+ TestFrame {
+ time: 736
+ hash: 'E87B00BFC2C2A75A4234EC02A057AD3A'
+ }
+ TestFrame {
+ time: 752
+ hash: 'DA60100DC55023C3BAB367D97C8F6A85'
+ }
+ TestFrame {
+ time: 768
+ hash: 'DC98A9BDD99367C1E9B838D4BE489DCC'
+ }
+ TestFrame {
+ time: 784
+ hash: '3F869538028A09020D5E8F528F4FB119'
+ }
+ TestFrame {
+ time: 800
+ hash: '9650FD0364C01B11E4F5DCCE51D008AF'
+ }
+ TestFrame {
+ time: 816
+ hash: '2CB09D9655ECC30AE6A591B28C0D355C'
+ }
+ TestFrame {
+ time: 832
+ hash: '4DB9BC6C11CAF1D77794C2EABB62A44E'
+ }
+ TestFrame {
+ time: 848
+ hash: 'CE2B5DD7418868ACF86FEA6AD19CC0C5'
+ }
+ TestFrame {
+ time: 864
+ hash: '7C27EF654E645679C90520D6CF00B0C4'
+ }
+ TestFrame {
+ time: 880
+ hash: 'AB3E211DF3EF7F5F7A8D712EDC891C0F'
+ }
+ TestFrame {
+ time: 896
+ hash: '19D2AE617A49B57DD012677E2834469C'
+ }
+ TestFrame {
+ time: 912
+ hash: '5025EB75C88F0760F637E0342B7F88A2'
+ }
+ TestFrame {
+ time: 928
+ hash: '005ACBEF952A8EE536E6308A48223E65'
+ }
+ TestFrame {
+ time: 944
+ hash: 'F1E0301430D153FB9D15EAFFDFCD5C58'
+ }
+ TestFrame {
+ time: 960
+ hash: '5F18A81707F23D377E81A27C1FC41CE9'
+ }
+ TestFrame {
+ time: 976
+ hash: 'BCC35497884C158396C7F60759D1FDA4'
+ }
+ TestFrame {
+ time: 992
+ hash: '7A4528B000A4EA142D1C77407FA1F581'
+ }
+ TestFrame {
+ time: 1008
+ hash: 'BA967A7D810A4531E577E5F6BD2DEF33'
+ }
+ TestFrame {
+ time: 1024
+ hash: 'F5AFD9CF8FFE27E9992454B9E68688CB'
+ }
+ TestFrame {
+ time: 1040
+ hash: '51D475C7F64A86D3A18FB115297A7B6B'
+ }
+ TestFrame {
+ time: 1056
+ hash: '49F5D6FD45C195A8D245B7FEFC1277AB'
+ }
+ TestFrame {
+ time: 1072
+ hash: 'F9B0B278659E3A0F78611E6B7F0F2176'
+ }
+ TestFrame {
+ time: 1088
+ hash: '0809D32D5BC1BFCE199B1F39A1C68D4F'
+ }
+ TestFrame {
+ time: 1104
+ hash: 'B7208D103B63A936DFF8DD8ED224237F'
+ }
+ TestFrame {
+ time: 1120
+ hash: 'A57C81049B0DC68090EC7C3327B9922C'
+ }
+ TestFrame {
+ time: 1136
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 1152
+ hash: 'AF3120FE262D2489C0ED33FBBEE1549F'
+ }
+ TestFrame {
+ time: 1168
+ hash: '0C20D12464ABBDC45041EA5D9F2719B1'
+ }
+ TestFrame {
+ time: 1184
+ hash: 'DD60CBAFF6F34027474E92315DBC0EBC'
+ }
+ TestFrame {
+ time: 1200
+ hash: '336D31586171F22D541B989D24B95CBB'
+ }
+ TestFrame {
+ time: 1216
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 1232
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 1248
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 1264
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 1280
+ hash: '336D31586171F22D541B989D24B95CBB'
+ }
+ TestFrame {
+ time: 1296
+ hash: 'F0D8132489C2F2EF760E905B3C093726'
+ }
+ TestFrame {
+ time: 1312
+ hash: '6D63FB5C8A80F0280E88B2CDF8641BB9'
+ }
+ TestFrame {
+ time: 1328
+ hash: 'DD60CBAFF6F34027474E92315DBC0EBC'
+ }
+ TestFrame {
+ time: 1344
+ hash: 'EF8941674CB61F54853DC33652BB854E'
+ }
+ TestFrame {
+ time: 1360
+ hash: 'BC426FB7C31751665B0D3F16E2CB0173'
+ }
+ TestFrame {
+ time: 1376
+ hash: '0C20D12464ABBDC45041EA5D9F2719B1'
+ }
+ TestFrame {
+ time: 1392
+ hash: '53AE93140252373EAA4D9DA73756BD8E'
+ }
+ TestFrame {
+ time: 1408
+ hash: '721D7061811B5439C2E8E395917494BC'
+ }
+ TestFrame {
+ time: 1424
+ hash: 'AF3120FE262D2489C0ED33FBBEE1549F'
+ }
+ TestFrame {
+ time: 1440
+ hash: 'A8B624EBFC9AB713D1CE55F318A6E90D'
+ }
+ TestFrame {
+ time: 1456
+ hash: 'A88A8129259F86DF5A73ADDC3649AD37'
+ }
+ TestFrame {
+ time: 1472
+ hash: 'A88A8129259F86DF5A73ADDC3649AD37'
+ }
+ TestFrame {
+ time: 1488
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 1504
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 1520
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 1536
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 1552
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 1568
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 1584
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 1600
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 1616
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 1632
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 1648
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 1664
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 1680
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 1696
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 1712
+ hash: 'A88A8129259F86DF5A73ADDC3649AD37'
+ }
+ TestFrame {
+ time: 1728
+ hash: 'A8B624EBFC9AB713D1CE55F318A6E90D'
+ }
+ TestFrame {
+ time: 1744
+ hash: 'A8B624EBFC9AB713D1CE55F318A6E90D'
+ }
+ TestFrame {
+ time: 1760
+ hash: 'AF3120FE262D2489C0ED33FBBEE1549F'
+ }
+ TestFrame {
+ time: 1776
+ hash: '721D7061811B5439C2E8E395917494BC'
+ }
+ TestFrame {
+ time: 1792
+ hash: 'B3F4A2165EC1EE971542B8EF89656CEA'
+ }
+ TestFrame {
+ time: 1808
+ hash: '0C20D12464ABBDC45041EA5D9F2719B1'
+ }
+ TestFrame {
+ time: 1824
+ hash: 'BC426FB7C31751665B0D3F16E2CB0173'
+ }
+ TestFrame {
+ time: 1840
+ hash: 'EF8941674CB61F54853DC33652BB854E'
+ }
+ TestFrame {
+ time: 1856
+ hash: 'DD60CBAFF6F34027474E92315DBC0EBC'
+ }
+ TestFrame {
+ time: 1872
+ hash: '6D63FB5C8A80F0280E88B2CDF8641BB9'
+ }
+ TestFrame {
+ time: 1888
+ hash: 'E74FE4A6BD92CBE8629C8BC8A870104D'
+ }
+ TestFrame {
+ time: 1904
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 1920
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 1936
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 1952
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 1968
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 1984
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 2000
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 2016
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 2032
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 2048
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 2064
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 2080
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2096
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2112
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2128
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2144
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2160
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2176
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2192
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 2208
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 2224
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 2240
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 2256
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 2272
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 2288
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 2304
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2320
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 2336
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2352
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2368
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2384
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2400
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 2416
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 2432
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2448
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2464
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2480
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 2496
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 2512
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 3504
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 3520
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 3536
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 3552
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 3568
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 3584
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 3600
+ hash: 'E74FE4A6BD92CBE8629C8BC8A870104D'
+ }
+ TestFrame {
+ time: 3616
+ hash: 'E11455D4E23A5A865E222A7ABA4BA4F9'
+ }
+ TestFrame {
+ time: 3632
+ hash: '8757668E56BE6449EC375F0B8FED1BE3'
+ }
+ TestFrame {
+ time: 3648
+ hash: '53AE93140252373EAA4D9DA73756BD8E'
+ }
+ TestFrame {
+ time: 3664
+ hash: 'A88A8129259F86DF5A73ADDC3649AD37'
+ }
+ TestFrame {
+ time: 3680
+ hash: '630D90EEF2673A69E8EBC4EF1BA40E81'
+ }
+ TestFrame {
+ time: 3696
+ hash: 'B7208D103B63A936DFF8DD8ED224237F'
+ }
+ TestFrame {
+ time: 3712
+ hash: '1516C3547C7CF64832B3BC7DA7C44521'
+ }
+ TestFrame {
+ time: 3728
+ hash: '49F5D6FD45C195A8D245B7FEFC1277AB'
+ }
+ TestFrame {
+ time: 3744
+ hash: 'F5AFD9CF8FFE27E9992454B9E68688CB'
+ }
+ TestFrame {
+ time: 3760
+ hash: '7A4528B000A4EA142D1C77407FA1F581'
+ }
+ TestFrame {
+ time: 3776
+ hash: '5F18A81707F23D377E81A27C1FC41CE9'
+ }
+ TestFrame {
+ time: 3792
+ hash: '005ACBEF952A8EE536E6308A48223E65'
+ }
+ TestFrame {
+ time: 3808
+ hash: '85C135EF72D3D25658A3663E69FFB7C2'
+ }
+ TestFrame {
+ time: 3824
+ hash: '7C27EF654E645679C90520D6CF00B0C4'
+ }
+ TestFrame {
+ time: 3840
+ hash: '20258F07C613958C32F783466771391A'
+ }
+ TestFrame {
+ time: 3856
+ hash: '9650FD0364C01B11E4F5DCCE51D008AF'
+ }
+ TestFrame {
+ time: 3872
+ hash: 'F340CDF60C6D4C29D26B7202A093EC70'
+ }
+ TestFrame {
+ time: 3888
+ hash: 'D754D35D0793F9F7D4F6249A874E4C45'
+ }
+ TestFrame {
+ time: 3904
+ hash: '79EC710576427DF73DD03F39FBA6E2EB'
+ }
+ TestFrame {
+ time: 3920
+ hash: '45281A70021F81DBEF30334B1480DA1B'
+ }
+ TestFrame {
+ time: 3936
+ hash: 'FFD39C1122FE2F7877EF30591B539B40'
+ }
+ TestFrame {
+ time: 3952
+ hash: '4AC43A03CC6F2020AB5F894D704092AC'
+ }
+ TestFrame {
+ time: 3968
+ hash: 'C1A7B7D6D64AC5584C073C2881290696'
+ }
+ TestFrame {
+ time: 3984
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 4000
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 4016
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 4032
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 4048
+ hash: '29ECE1BCA4D21FB5862091317D430A13'
+ }
+ TestFrame {
+ time: 4064
+ hash: 'C1A7B7D6D64AC5584C073C2881290696'
+ }
+ TestFrame {
+ time: 4080
+ hash: 'C1A7B7D6D64AC5584C073C2881290696'
+ }
+ TestFrame {
+ time: 4096
+ hash: '4AC43A03CC6F2020AB5F894D704092AC'
+ }
+ TestFrame {
+ time: 4112
+ hash: '4AC43A03CC6F2020AB5F894D704092AC'
+ }
+ TestFrame {
+ time: 4128
+ hash: 'FFD39C1122FE2F7877EF30591B539B40'
+ }
+ TestFrame {
+ time: 4144
+ hash: '62A7133012348F2EC3A388FB685ECC3F'
+ }
+ TestFrame {
+ time: 4160
+ hash: '45281A70021F81DBEF30334B1480DA1B'
+ }
+ TestFrame {
+ time: 4176
+ hash: '6CC9DE62A0C8FA5E42EAC1B01E99AC32'
+ }
+ TestFrame {
+ time: 4192
+ hash: '79EC710576427DF73DD03F39FBA6E2EB'
+ }
+ TestFrame {
+ time: 4208
+ hash: '5BE4F5C67941EFB6FCEA363C79F1E321'
+ }
+ TestFrame {
+ time: 4224
+ hash: '7D9096B1EB940C82A37BAF39EF3CCF3E'
+ }
+ TestFrame {
+ time: 4240
+ hash: 'E87B00BFC2C2A75A4234EC02A057AD3A'
+ }
+ TestFrame {
+ time: 4256
+ hash: 'DA60100DC55023C3BAB367D97C8F6A85'
+ }
+ TestFrame {
+ time: 4272
+ hash: 'DC98A9BDD99367C1E9B838D4BE489DCC'
+ }
+ TestFrame {
+ time: 4288
+ hash: 'B2C778A5EFF5F01EDC54F03D8B4DE8C7'
+ }
+ TestFrame {
+ time: 4304
+ hash: '9650FD0364C01B11E4F5DCCE51D008AF'
+ }
+ TestFrame {
+ time: 4320
+ hash: '2CB09D9655ECC30AE6A591B28C0D355C'
+ }
+ TestFrame {
+ time: 4336
+ hash: '4DB9BC6C11CAF1D77794C2EABB62A44E'
+ }
+ TestFrame {
+ time: 4352
+ hash: 'CE2B5DD7418868ACF86FEA6AD19CC0C5'
+ }
+ TestFrame {
+ time: 4368
+ hash: 'C4F844EE71F23635BB3EC7375F6A134F'
+ }
+ TestFrame {
+ time: 4384
+ hash: '4E1FDA8A0495EF968C1CFFB1257426D7'
+ }
+ TestFrame {
+ time: 4400
+ hash: '19D2AE617A49B57DD012677E2834469C'
+ }
+ TestFrame {
+ time: 4416
+ hash: 'F438E8D2C16B5DE677924C8411219B19'
+ }
+ TestFrame {
+ time: 4432
+ hash: '005ACBEF952A8EE536E6308A48223E65'
+ }
+ TestFrame {
+ time: 4448
+ hash: '87B71778D52CD8563D171151D4D32407'
+ }
+ TestFrame {
+ time: 4464
+ hash: '691CD8BF5C7802FF6C5024827A379FC6'
+ }
+ TestFrame {
+ time: 4480
+ hash: 'AB442C0173C3D221B6782D28001DAC77'
+ }
+ TestFrame {
+ time: 4496
+ hash: '6F886D4538704C2FAD4D84C68214109F'
+ }
+ TestFrame {
+ time: 4512
+ hash: '56D39F233FAE41C60499D6161F891CBC'
+ }
+ TestFrame {
+ time: 4528
+ hash: '95D987C3FD1352FB81C42C63634FE53B'
+ }
+ TestFrame {
+ time: 4544
+ hash: '96DC84C0C548021910E7C5B580179054'
+ }
+ TestFrame {
+ time: 4560
+ hash: 'DDB71CBD57F6E43744D533D4F72B08DB'
+ }
+ TestFrame {
+ time: 4576
+ hash: 'F7AB4B197BEA455B22F259913438D207'
+ }
+ TestFrame {
+ time: 4592
+ hash: '2AD64CB01C9D50E0118D5ECE0A644DF2'
+ }
+ TestFrame {
+ time: 4608
+ hash: '6579681C59DD571DF0EE4429D74FB5C7'
+ }
+ TestFrame {
+ time: 4624
+ hash: '630D90EEF2673A69E8EBC4EF1BA40E81'
+ }
+ TestFrame {
+ time: 4640
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 4656
+ hash: '721D7061811B5439C2E8E395917494BC'
+ }
+ TestFrame {
+ time: 4672
+ hash: 'BC426FB7C31751665B0D3F16E2CB0173'
+ }
+ TestFrame {
+ time: 4688
+ hash: 'E11455D4E23A5A865E222A7ABA4BA4F9'
+ }
+ TestFrame {
+ time: 4704
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 4720
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 4736
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 4752
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 4768
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 4784
+ hash: '336D31586171F22D541B989D24B95CBB'
+ }
+ TestFrame {
+ time: 4800
+ hash: 'F0D8132489C2F2EF760E905B3C093726'
+ }
+ TestFrame {
+ time: 4816
+ hash: 'E11455D4E23A5A865E222A7ABA4BA4F9'
+ }
+ TestFrame {
+ time: 4832
+ hash: 'DD60CBAFF6F34027474E92315DBC0EBC'
+ }
+ TestFrame {
+ time: 4848
+ hash: '8757668E56BE6449EC375F0B8FED1BE3'
+ }
+ TestFrame {
+ time: 4864
+ hash: 'BC426FB7C31751665B0D3F16E2CB0173'
+ }
+ TestFrame {
+ time: 4880
+ hash: 'B3F4A2165EC1EE971542B8EF89656CEA'
+ }
+ TestFrame {
+ time: 4896
+ hash: '53AE93140252373EAA4D9DA73756BD8E'
+ }
+ TestFrame {
+ time: 4912
+ hash: '721D7061811B5439C2E8E395917494BC'
+ }
+ TestFrame {
+ time: 4928
+ hash: 'AF3120FE262D2489C0ED33FBBEE1549F'
+ }
+ TestFrame {
+ time: 4944
+ hash: 'A8B624EBFC9AB713D1CE55F318A6E90D'
+ }
+ TestFrame {
+ time: 4960
+ hash: 'A88A8129259F86DF5A73ADDC3649AD37'
+ }
+ TestFrame {
+ time: 4976
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 4992
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 5008
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 5024
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 5040
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5056
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5072
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5088
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5104
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5120
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5136
+ hash: '1373545E43FFF7251CEC9E8375EA267F'
+ }
+ TestFrame {
+ time: 5152
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 5168
+ hash: 'E553F365912586C6408C8C53B1B7D118'
+ }
+ TestFrame {
+ time: 5184
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 5200
+ hash: '3DB5E30EF19EA693C21CCF72892C4390'
+ }
+ TestFrame {
+ time: 5216
+ hash: 'A88A8129259F86DF5A73ADDC3649AD37'
+ }
+ TestFrame {
+ time: 5232
+ hash: 'A8B624EBFC9AB713D1CE55F318A6E90D'
+ }
+ TestFrame {
+ time: 5248
+ hash: 'AF3120FE262D2489C0ED33FBBEE1549F'
+ }
+ TestFrame {
+ time: 5264
+ hash: '721D7061811B5439C2E8E395917494BC'
+ }
+ TestFrame {
+ time: 5280
+ hash: '53AE93140252373EAA4D9DA73756BD8E'
+ }
+ TestFrame {
+ time: 5296
+ hash: 'B3F4A2165EC1EE971542B8EF89656CEA'
+ }
+ TestFrame {
+ time: 5312
+ hash: '0C20D12464ABBDC45041EA5D9F2719B1'
+ }
+ TestFrame {
+ time: 5328
+ hash: '8757668E56BE6449EC375F0B8FED1BE3'
+ }
+ TestFrame {
+ time: 5344
+ hash: 'EF8941674CB61F54853DC33652BB854E'
+ }
+ TestFrame {
+ time: 5360
+ hash: 'E11455D4E23A5A865E222A7ABA4BA4F9'
+ }
+ TestFrame {
+ time: 5376
+ hash: '6D63FB5C8A80F0280E88B2CDF8641BB9'
+ }
+ TestFrame {
+ time: 5392
+ hash: 'E74FE4A6BD92CBE8629C8BC8A870104D'
+ }
+ TestFrame {
+ time: 5408
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5424
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 5440
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 5456
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 5472
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5488
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 5504
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 5520
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 5536
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 5552
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 5568
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 5584
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5600
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5616
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5632
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5648
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5664
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5680
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5696
+ hash: '3042003C067B257DE2CB32F650DDE693'
+ }
+ TestFrame {
+ time: 5712
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 5728
+ hash: 'A725B59B4947357546BBFC7DF3D830AF'
+ }
+ TestFrame {
+ time: 5744
+ hash: 'CE57E27AF329EBA4FAC3AB891F0407CE'
+ }
+ TestFrame {
+ time: 5760
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 5776
+ hash: '41BA853C3403F68A23E708DF82E21C53'
+ }
+ TestFrame {
+ time: 5792
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 5808
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5824
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+ TestFrame {
+ time: 5840
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5856
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5872
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5888
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5904
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 5920
+ hash: 'DCF2867C127E041970047EC8F3EDC04F'
+ }
+ TestFrame {
+ time: 5936
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5952
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5968
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 5984
+ hash: '675EBBDD22DD22CE45993DF4AF1ACFE9'
+ }
+ TestFrame {
+ time: 6000
+ hash: 'A350B70C5238A340E85FD4A3EC0390A3'
+ }
+}
diff --git a/tests/auto/declarative/visual/pauseAnimation/pauseAnimation.qml b/tests/auto/declarative/visual/pauseAnimation/pauseAnimation.qml
new file mode 100644
index 0000000..2abe83f
--- /dev/null
+++ b/tests/auto/declarative/visual/pauseAnimation/pauseAnimation.qml
@@ -0,0 +1,30 @@
+import Qt 4.6
+
+Rect {
+ id: rect
+ width: 120
+ height: 200
+ color: "white"
+ Image {
+ id: img
+ source: "pics/qtlogo.png"
+ x: 60-width/2
+ y: 200-height
+ y: SequentialAnimation {
+ running: true
+ repeat: true
+ NumberAnimation {
+ to: 0; duration: 500
+ easing: "easeInOutQuad"
+ }
+ NumberAnimation {
+ to: 200-img.height
+ easing: "easeOutBounce"
+ duration: 2000
+ }
+ PauseAnimation {
+ duration: 1000
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/pauseAnimation/pics/qtlogo.png b/tests/auto/declarative/visual/pauseAnimation/pics/qtlogo.png
new file mode 100644
index 0000000..399bd0b
--- /dev/null
+++ b/tests/auto/declarative/visual/pauseAnimation/pics/qtlogo.png
Binary files differ
diff --git a/tests/auto/declarative/visual/pauseAnimation/test b/tests/auto/declarative/visual/pauseAnimation/test
new file mode 100644
index 0000000..85bc3c1
--- /dev/null
+++ b/tests/auto/declarative/visual/pauseAnimation/test
@@ -0,0 +1 @@
+pauseAnimation.qml
diff --git a/tests/auto/declarative/visual/qfxtext/elide/data/raster/image0.png b/tests/auto/declarative/visual/qfxtext/elide/data/raster/image0.png
new file mode 100644
index 0000000..05dc9ab
--- /dev/null
+++ b/tests/auto/declarative/visual/qfxtext/elide/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/qfxtext/elide/data/raster/manifest.qml b/tests/auto/declarative/visual/qfxtext/elide/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/qfxtext/elide/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/qfxtext/elide/elide.qml b/tests/auto/declarative/visual/qfxtext/elide/elide.qml
new file mode 100644
index 0000000..0372a9c
--- /dev/null
+++ b/tests/auto/declarative/visual/qfxtext/elide/elide.qml
@@ -0,0 +1,35 @@
+import Qt 4.6
+
+Rect {
+ width: contents.width
+ height: contents.height
+ VerticalLayout {
+ width: 80
+ height: Text.height*4
+ Text {
+ elide: "ElideLeft"
+ text: "aaa bbb ccc ddd eee fff"
+ width: 80
+ color: "white"
+ id: Text
+ }
+ Text {
+ elide: "ElideMiddle"
+ text: "aaa bbb ccc ddd eee fff"
+ width: 80
+ color: "white"
+ }
+ Text {
+ elide: "ElideRight"
+ text: "aaa bbb ccc ddd eee fff"
+ width: 80
+ color: "white"
+ }
+ Text {
+ elide: "ElideNone"
+ text: "aaa bbb ccc ddd eee fff"
+ width: 80
+ color: "white"
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/qfxtext/elide/test b/tests/auto/declarative/visual/qfxtext/elide/test
new file mode 100644
index 0000000..bde7c7c
--- /dev/null
+++ b/tests/auto/declarative/visual/qfxtext/elide/test
@@ -0,0 +1 @@
+elide.qml
diff --git a/tests/auto/declarative/visual/repeater/basic1/basic1.qml b/tests/auto/declarative/visual/repeater/basic1/basic1.qml
new file mode 100644
index 0000000..c803de9
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic1/basic1.qml
@@ -0,0 +1,28 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 300
+ height: 200
+ id: Page
+ HorizontalLayout {
+ Repeater {
+ component: Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ dataSource: ListModel {
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic1/data/raster/image0.png b/tests/auto/declarative/visual/repeater/basic1/data/raster/image0.png
new file mode 100644
index 0000000..868eaa3
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic1/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/repeater/basic1/data/raster/manifest.qml b/tests/auto/declarative/visual/repeater/basic1/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic1/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic1/test b/tests/auto/declarative/visual/repeater/basic1/test
new file mode 100644
index 0000000..49fcf5a
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic1/test
@@ -0,0 +1 @@
+basic1.qml
diff --git a/tests/auto/declarative/visual/repeater/basic2/basic2.qml b/tests/auto/declarative/visual/repeater/basic2/basic2.qml
new file mode 100644
index 0000000..bcad407
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic2/basic2.qml
@@ -0,0 +1,32 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 300
+ height: 200
+ id: Page
+ Component {
+ id: Delegate
+ Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ }
+ HorizontalLayout {
+ Repeater {
+ component: Delegate
+ dataSource: ListModel {
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic2/data/raster/image0.png b/tests/auto/declarative/visual/repeater/basic2/data/raster/image0.png
new file mode 100644
index 0000000..868eaa3
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic2/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/repeater/basic2/data/raster/manifest.qml b/tests/auto/declarative/visual/repeater/basic2/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic2/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic2/test b/tests/auto/declarative/visual/repeater/basic2/test
new file mode 100644
index 0000000..eb79495
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic2/test
@@ -0,0 +1 @@
+basic2.qml
diff --git a/tests/auto/declarative/visual/repeater/basic3/basic3.qml b/tests/auto/declarative/visual/repeater/basic3/basic3.qml
new file mode 100644
index 0000000..223e5e8
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic3/basic3.qml
@@ -0,0 +1,30 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 300
+ height: 200
+ id: Page
+ ListModel {
+ id: DataSource
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ HorizontalLayout {
+ Repeater {
+ dataSource: DataSource
+ component: Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic3/data/raster/image0.png b/tests/auto/declarative/visual/repeater/basic3/data/raster/image0.png
new file mode 100644
index 0000000..868eaa3
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic3/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/repeater/basic3/data/raster/manifest.qml b/tests/auto/declarative/visual/repeater/basic3/data/raster/manifest.qml
new file mode 100644
index 0000000..8fd963b
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic3/data/raster/manifest.qml
@@ -0,0 +1,15 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+ TestKey {
+ time: 1296
+ type: 6
+ modifiers: 0
+ key: 16777251
+ text: ''
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic3/test b/tests/auto/declarative/visual/repeater/basic3/test
new file mode 100644
index 0000000..9ec306b
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic3/test
@@ -0,0 +1 @@
+basic3.qml
diff --git a/tests/auto/declarative/visual/repeater/basic4/basic4.qml b/tests/auto/declarative/visual/repeater/basic4/basic4.qml
new file mode 100644
index 0000000..fd78ba2
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic4/basic4.qml
@@ -0,0 +1,34 @@
+import Qt 4.6
+
+Rect {
+ color: "blue"
+ width: 300
+ height: 200
+ id: Page
+ ListModel {
+ id: DataSource
+ ListElement {
+ name: "January"
+ }
+ ListElement {
+ name: "February"
+ }
+ }
+ Component {
+ id: Delegate
+ Rect {
+ color: "red"
+ width: 100
+ height: 100
+ Text {
+ text: name
+ }
+ }
+ }
+ HorizontalLayout {
+ Repeater {
+ dataSource: DataSource
+ component: Delegate
+ }
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic4/data/raster/image0.png b/tests/auto/declarative/visual/repeater/basic4/data/raster/image0.png
new file mode 100644
index 0000000..868eaa3
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic4/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/repeater/basic4/data/raster/manifest.qml b/tests/auto/declarative/visual/repeater/basic4/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic4/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/repeater/basic4/test b/tests/auto/declarative/visual/repeater/basic4/test
new file mode 100644
index 0000000..2a7f227
--- /dev/null
+++ b/tests/auto/declarative/visual/repeater/basic4/test
@@ -0,0 +1 @@
+basic4.qml
diff --git a/tests/auto/declarative/visual/runtests.sh b/tests/auto/declarative/visual/runtests.sh
new file mode 100755
index 0000000..4380884
--- /dev/null
+++ b/tests/auto/declarative/visual/runtests.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+export QFX_USE_SIMPLECANVAS=1
+for a in `cat tests`; do ./tst_visual -testdir $a; done
diff --git a/tests/auto/declarative/visual/tests b/tests/auto/declarative/visual/tests
new file mode 100644
index 0000000..498edd0
--- /dev/null
+++ b/tests/auto/declarative/visual/tests
@@ -0,0 +1,12 @@
+ListView/basic1
+ListView/basic2
+ListView/basic3
+ListView/basic4
+bindinganimation
+repeater/basic1
+repeater/basic2
+repeater/basic3
+repeater/basic4
+webview/autosize
+qfxtext/elide
+pauseAnimation
diff --git a/tests/auto/declarative/visual/tst_visual.cpp b/tests/auto/declarative/visual/tst_visual.cpp
new file mode 100644
index 0000000..f540e62
--- /dev/null
+++ b/tests/auto/declarative/visual/tst_visual.cpp
@@ -0,0 +1,74 @@
+#include <qtest.h>
+#include <QFxView>
+#include <QApplication>
+#include <QFxTestView>
+#include <QFile>
+
+static QString testdir;
+class tst_visual : public QObject
+{
+ Q_OBJECT
+public:
+ tst_visual() {}
+
+private slots:
+ void visual();
+};
+
+#ifdef QT_OPENGL_ES
+#define RASTER_TESTDIR "/data/opengl"
+#else
+#define RASTER_TESTDIR "/data/raster"
+#endif
+
+void tst_visual::visual()
+{
+ QVERIFY(!testdir.isEmpty());
+
+ QString filename = QLatin1String(QT_TEST_SOURCE_DIR) + "/" + testdir + "/test";
+ qWarning() << "Using config:" << filename;
+ QFile configFile(filename);
+ QVERIFY(configFile.open(QIODevice::ReadOnly));
+
+ QString testfile = configFile.readLine().trimmed();
+ QVERIFY(!testfile.isEmpty());
+
+ if(testfile.startsWith("QTDIR/")) {
+ testfile.remove(0, 6);
+ testfile.prepend(QLatin1String(QT_TEST_SOURCE_DIR) + "/../../../../");
+ } else {
+ testfile.prepend(QLatin1String(QT_TEST_SOURCE_DIR) + "/" + testdir + "/");
+ }
+
+ QFxTestView *view = new QFxTestView(testfile, QLatin1String(QT_TEST_SOURCE_DIR) + "/" + testdir + RASTER_TESTDIR);
+ QVERIFY(view->runTest());
+}
+
+#include <QtTest/qtest_gui.h>
+
+int main(int argc, char *argv[])
+{
+ int newArgc = 1;
+ char **newArgv = new char*[argc];
+
+ newArgv[0] = argv[0];
+
+ QApplication app(newArgc, newArgv);
+
+ for(int ii = 1; ii < argc; ii++) {
+ if(QLatin1String(argv[ii]) == "-testdir" && (ii + 1) < argc) {
+ testdir = QLatin1String(argv[ii + 1]);
+ ii++;
+ } else {
+ newArgv[newArgc++] = argv[ii];
+ }
+ }
+
+ tst_visual tc;
+ int rv = QTest::qExec(&tc, newArgc, newArgv);
+
+ delete [] newArgv;
+ return rv;
+}
+
+#include "tst_visual.moc"
diff --git a/tests/auto/declarative/visual/visual.pro b/tests/auto/declarative/visual/visual.pro
new file mode 100644
index 0000000..203b691
--- /dev/null
+++ b/tests/auto/declarative/visual/visual.pro
@@ -0,0 +1,5 @@
+load(qttest_p4)
+contains(QT_CONFIG,declarative): QT += declarative
+SOURCES += tst_visual.cpp
+
+DEFINES += QT_TEST_SOURCE_DIR=\"\\\"$$PWD\\\"\"
diff --git a/tests/auto/declarative/visual/webview/autosize/data/raster/image0.png b/tests/auto/declarative/visual/webview/autosize/data/raster/image0.png
new file mode 100644
index 0000000..206952d
--- /dev/null
+++ b/tests/auto/declarative/visual/webview/autosize/data/raster/image0.png
Binary files differ
diff --git a/tests/auto/declarative/visual/webview/autosize/data/raster/manifest.qml b/tests/auto/declarative/visual/webview/autosize/data/raster/manifest.qml
new file mode 100644
index 0000000..7c21d0f
--- /dev/null
+++ b/tests/auto/declarative/visual/webview/autosize/data/raster/manifest.qml
@@ -0,0 +1,8 @@
+import Qt 4.6
+
+TestLog {
+ TestFullFrame {
+ time: 0
+ frameId: 0
+ }
+}
diff --git a/tests/auto/declarative/visual/webview/autosize/test b/tests/auto/declarative/visual/webview/autosize/test
new file mode 100644
index 0000000..446d3f9
--- /dev/null
+++ b/tests/auto/declarative/visual/webview/autosize/test
@@ -0,0 +1 @@
+QTDIR/examples/declarative/webview/autosize.qml