@@ -16,7 +16,7 @@
17import QtQuick 2.0
17import QtQuick 2.0
18import QtTest 1.0
18import QtTest 1.0
19−import Unity 0.1
19+import Unity 0.2
20import ".."
20import ".."
21import "../../../qml/Dash"
21import "../../../qml/Dash"
22import "../../../qml/Components"
22import "../../../qml/Components"
@@ -26,7 +26,14 @@ import Unity.Test 0.1 as UT
28 width: units.gu(120)
28 width: units.gu(120)
29− height: units.gu(80)
29+ height: units.gu(100)
31+ // BEGIN To reduce warnings
32+ // TODO I think it we should pass down these variables
33+ // as needed instead of hoping they will be globally around
34+ property var greeter: null
35+ property var panel: null
36+ // BEGIN To reduce warnings
32 id: scopes
39 id: scopes
@@ -41,24 +48,19 @@ Item {
41 signal mainStageFocusedApplicationChanged()
48 signal mainStageFocusedApplicationChanged()
44− DashContentOpenEffect {
46− previewListView: previewListView
47− sourceItem: genericScopeView
50 PageHeaderLabel {
51 PageHeaderLabel {
51− id: pageHeader
52+ id: testPageHeader
52 searchHistory: SearchHistoryModel {}
53 searchHistory: SearchHistoryModel {}
54+ text: genericScopeView.scope ? genericScopeView.scope.name : ""
55 GenericScopeView {
58 GenericScopeView {
56 id: genericScopeView
59 id: genericScopeView
57 anchors.fill: parent
60 anchors.fill: parent
58 previewListView: previewListView
61 previewListView: previewListView
59− openEffect: openEffect
60− pageHeader: pageHeader
62+ pageHeader: testPageHeader
61− tabBarHeight: pageHeader.implicitHeight
63+ tabBarHeight: testPageHeader.implicitHeight
63 UT.UnityTestCase {
65 UT.UnityTestCase {
64 name: "GenericScopeView"
66 name: "GenericScopeView"
@@ -72,10 +74,10 @@ Item {
73 function test_isCurrent() {
75 function test_isCurrent() {
74 genericScopeView.isCurrent = true
76 genericScopeView.isCurrent = true
75− pageHeader.searchQuery = "test"
77+ testPageHeader.searchQuery = "test"
76 previewListView.open = true
78 previewListView.open = true
77 genericScopeView.isCurrent = false
79 genericScopeView.isCurrent = false
78− tryCompare(pageHeader, "searchQuery", "")
80+ tryCompare(testPageHeader, "searchQuery", "")
79 tryCompare(previewListView, "open", false);
81 tryCompare(previewListView, "open", false);
@@ -93,181 +95,14 @@ Item {
94 function test_showDash() {
96 function test_showDash() {
95 previewListView.open = true;
97 previewListView.open = true;
96− tryCompare(openEffect, "live", true);
97 scopes.get(2).showDash();
98 scopes.get(2).showDash();
98 tryCompare(previewListView, "open", false);
99 tryCompare(previewListView, "open", false);
99− tryCompare(openEffect, "live", true);
102 function test_hideDash() {
102 function test_hideDash() {
103 previewListView.open = true;
103 previewListView.open = true;
104 scopes.get(2).hideDash();
104 scopes.get(2).hideDash();
105 tryCompare(previewListView, "open", false);
105 tryCompare(previewListView, "open", false);
106− tryCompare(openEffect, "gap", 0);
109− function openPreview(filterGridName, willOpen) {
110− if (filterGridName === undefined)
111− filterGridName = "0";
112− if (willOpen === undefined)
114− tryCompareFunction(function() {
115− var filterGrid = findChild(genericScopeView, filterGridName);
116− if (filterGrid != null) {
117− var tile = findChild(filterGrid, "delegate0");
118− return tile != null;
123− var tile = findChild(findChild(genericScopeView, filterGridName), "delegate0");
124− mouseClick(tile, tile.width / 2, tile.height / 2);
125− tryCompare(previewListView, "open", willOpen);
126− tryCompare(openEffect, "gap", willOpen ? 1 : 0);
129− function checkArrowPosition(index) {
130− tryCompareFunction(function() {
131− var tile = findChild(findChild(genericScopeView, "0"), "delegate" + index);
132− return tile != null;
135− var tile = findChild(findChild(genericScopeView, "0"), "delegate" + index);
136− var tileCenter = tile.x + tile.width/2;
137− var pointerArrow = findChild(previewListView, "pointerArrow");
138− var pointerArrowCenter = pointerArrow.x + pointerArrow.width/2;
139− compare(pointerArrowCenter, tileCenter, "Pointer did not move to tile");
142− function closePreview() {
143− var closePreviewMouseArea = findChild(genericScopeView, "closePreviewMouseArea");
144− mouseClick(closePreviewMouseArea, closePreviewMouseArea.width / 2, closePreviewMouseArea.height / 2);
146− tryCompare(previewListView, "open", false);
147− tryCompare(openEffect, "gap", 0);
149− var categoryListView = findChild(genericScopeView, "categoryListView");
150− categoryListView.flick(0, units.gu(200));
151− tryCompare(categoryListView, "flicking", false);
154− function test_previewOpenClose() {
155− tryCompare(previewListView, "open", false);
156− var categoryListView = findChild(genericScopeView, "categoryListView");
157− categoryListView.positionAtBeginning();
161− // check for it opening successfully
162− var currentPreviewItem = findChild(previewListView, "previewLoader0");
163− tryCompareFunction(function() {
164− var parts = currentPreviewItem.source.toString().split("/");
165− var name = parts[parts.length - 1];
166− return name == "DashPreviewPlaceholder.qml";
169− tryCompareFunction(function() {
170− var parts = currentPreviewItem.source.toString().split("/");
171− var name = parts[parts.length - 1];
172− return name == "GenericPreview.qml";
175− tryCompare(currentPreviewItem, "progress", 1);
176− tryCompare(previewListView, "open", true);
179− tryCompare(previewListView, "open", false);
182− function test_hiddenPreviewOpen() {
183− var categoryListView = findChild(genericScopeView, "categoryListView");
184− categoryListView.positionAtBeginning();
185− waitForRendering(categoryListView);
186− categoryListView.flick(0, -units.gu(60));
187− tryCompare(categoryListView, "flicking", false);
189− var tile = findChild(findChild(genericScopeView, "0"), "delegate0");
190− mouseClick(tile, tile.width / 2, tile.height - 1);
191− tryCompare(openEffect, "gap", 1);
193− verify(openEffect.positionPx >= Math.round(pageHeader.height + categoryListView.stickyHeaderHeight));
196− function test_previewCycle() {
197− var categoryListView = findChild(genericScopeView, "categoryListView");
198− categoryListView.positionAtBeginning();
200− tryCompare(previewListView, "open", false);
201− tryCompare(openEffect, "gap", 0);
205− // wait for it to be loaded
206− var currentPreviewItem = findChild(previewListView, "previewLoader0");
207− tryCompareFunction(function() {
208− var parts = currentPreviewItem.source.toString().split("/");
209− var name = parts[parts.length - 1];
210− return name == "GenericPreview.qml";
213− tryCompare(currentPreviewItem, "progress", 1);
214− waitForRendering(currentPreviewItem);
216− checkArrowPosition(0);
218− // flick to the next previews
219− tryCompare(previewListView, "count", 15);
220− for (var i = 1; i < previewListView.count; ++i) {
222− mouseFlick(previewListView, previewListView.width - units.gu(1),
223− previewListView.height / 2,
225− previewListView.height / 2);
227− // wait for it to be loaded
228− var nextPreviewItem = findChild(previewListView, "previewLoader" + i);
229− tryCompareFunction(function() {
230− var parts = nextPreviewItem.source.toString().split("/");
231− var name = parts[parts.length - 1];
232− return name == "GenericPreview.qml";
235− tryCompare(nextPreviewItem, "progress", 1);
236− waitForRendering(nextPreviewItem);
237− tryCompareFunction(function() {return nextPreviewItem.item !== null}, true);
239− checkArrowPosition(i);
241− // Make sure only the new one has isCurrent set to true
242− compare(nextPreviewItem.item.isCurrent, true);
244− if (currentPreviewItem.item !== undefined && currentPreviewItem.item !== null) {
245− compare(currentPreviewItem.item.isCurrent, false);
248− currentPreviewItem = nextPreviewItem;
253− function test_show_spinner() {
254− var categoryListView = findChild(genericScopeView, "categoryListView");
255− waitForRendering(categoryListView);
256− categoryListView.contentY = units.gu(13);
258− var previewLoader = findChild(previewListView, "previewLoader0");
259− compare(previewLoader.source.toString().split("/").pop(), "DashPreviewPlaceholder.qml");
260− compare(categoryListView.contentY, 0)
261− tryCompare(previewLoader, "progress", 1.0);
262− tryCompareFunction(function() { return previewLoader.item != undefined; }, true);
264− previewLoader.item.showProcessingAction = true;
265− var waitingForAction = findChild(previewListView, "waitingForActionMouseArea");
266− tryCompare(waitingForAction, "enabled", true);
267− previewLoader.closePreviewSpinner();
268− tryCompare(waitingForAction, "enabled", false);
273 function test_changeScope() {
108 function test_changeScope() {
@@ -300,59 +135,17 @@ Item {
300 tryCompare(category, "filtered", true);
135 tryCompare(category, "filtered", true);
303− function test_getRendererCarouselGridFallback() {
304− var rendererId = "carousel"
305− var contentType = ""
306− var rendererHint = ""
307− var results = new Object()
310− var renderer = genericScopeView.getRenderer(rendererId, contentType, rendererHint, results)
311− compare(renderer, "Generic/GenericCarousel.qml")
314− renderer = genericScopeView.getRenderer(rendererId, contentType, rendererHint, results)
315− compare(renderer, "Generic/GenericFilterGrid.qml")
318− function test_showPreviewCarousel() {
319− tryCompareFunction(function() { return findChild(genericScopeView, "carouselDelegate") != null; }, true);
320− var tile = findChild(genericScopeView, "carouselDelegate");
321− mouseClick(tile, tile.width / 2, tile.height / 2);
322− tryCompare(openEffect, "gap", 1);
324− // check for it opening successfully
325− var currentPreviewItem = findChild(previewListView, "previewLoader0");
326− tryCompareFunction(function() {
327− var parts = currentPreviewItem.source.toString().split("/");
328− var name = parts[parts.length - 1];
329− return name == "DashPreviewPlaceholder.qml";
332− tryCompareFunction(function() {
333− var parts = currentPreviewItem.source.toString().split("/");
334− var name = parts[parts.length - 1];
335− return name == "GenericPreview.qml";
338− tryCompare(currentPreviewItem, "progress", 1);
339− tryCompare(previewListView, "open", true);
342− tryCompare(previewListView, "open", false);
345 function test_filter_expand_expand_collapse() {
138 function test_filter_expand_expand_collapse() {
346 // wait for the item to be there
139 // wait for the item to be there
347− tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeaderapplications.scope") != null; }, true);
140+ tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader2") != null; }, true);
349 var categoryListView = findChild(genericScopeView, "categoryListView");
142 var categoryListView = findChild(genericScopeView, "categoryListView");
350 categoryListView.contentY = categoryListView.height;
143 categoryListView.contentY = categoryListView.height;
352− var header2 = findChild(genericScopeView, "dashSectionHeaderapplications.scope")
145+ var header2 = findChild(genericScopeView, "dashSectionHeader2")
353− var category2 = findChild(genericScopeView, "dashCategoryapplications.scope")
146+ var category2 = findChild(genericScopeView, "dashCategory2")
354− var category2FilterGrid = category2.children[0].children[0].children[0];
147+ var category2FilterGrid = category2.children[1].children[2];
355− verify(UT.Util.isInstanceOf(category2FilterGrid, "FilterGrid"));
148+ verify(UT.Util.isInstanceOf(category2FilterGrid, "CardFilterGrid"));
357 waitForRendering(header2);
150 waitForRendering(header2);
358 verify(category2.expandable);
151 verify(category2.expandable);
@@ -368,7 +161,7 @@ Item {
368 tryCompareFunction(
161 tryCompareFunction(
369 function() {
162 function() {
370 var header0 = findChild(genericScopeView, "dashSectionHeader0")
163 var header0 = findChild(genericScopeView, "dashSectionHeader0")
371− return header0.y == pageHeader.height;
164+ return header0.y == testPageHeader.height;
@@ -383,21 +176,6 @@ Item {
383 tryCompare(category2, "filtered", true);
176 tryCompare(category2, "filtered", true);
386− function test_bug1271676_no_move_y_no_preview() {
387− waitForRendering(genericScopeView);
388− var categoryListView = findChild(genericScopeView, "categoryListView");
389− waitForRendering(categoryListView);
390− tryCompareFunction(function() { return findChild(genericScopeView, "dashCategoryapplications.scope") != null; }, true);
391− var category = findChild(genericScopeView, "dashCategoryapplications.scope")
392− categoryListView.contentY = category.y;
393− waitForRendering(categoryListView);
394− var contentYBefore = categoryListView.contentY
395− openPreview("applications.scope", false); // This actually doesn't open anything because we
396− // have code so that the item of installed
397− // does activate instead of preview and never shows a preview
398− compare(categoryListView.contentY, contentYBefore);
401 function test_narrow_delegate_ranges_expand() {
179 function test_narrow_delegate_ranges_expand() {
402 tryCompareFunction(function() { return findChild(genericScopeView, "dashCategory0") != undefined; }, true);
180 tryCompareFunction(function() { return findChild(genericScopeView, "dashCategory0") != undefined; }, true);
403 var category = findChild(genericScopeView, "dashCategory0")
181 var category = findChild(genericScopeView, "dashCategory0")
@@ -419,8 +197,8 @@ Item {
419 PreviewListView {
197 PreviewListView {
420 id: previewListView
198 id: previewListView
421 anchors.fill: parent
199 anchors.fill: parent
422− openEffect: openEffect
200+ visible: false
423− categoryView: genericScopeView.categoryView
201+ pageHeader: testPageHeader
424 scope: genericScopeView.scope
202 scope: genericScopeView.scope