@@ -39,6 +39,10 @@ Item {
39 id: scopes
39 id: scopes
42 property Item applicationManager: Item {
46 property Item applicationManager: Item {
43 signal sideStageFocusedApplicationChanged()
47 signal sideStageFocusedApplicationChanged()
44 signal mainStageFocusedApplicationChanged()
48 signal mainStageFocusedApplicationChanged()
@@ -59,7 +63,14 @@ Item {
59 genericScopeView.scope = scopes.getScope(1)
63 genericScopeView.scope = scopes.getScope(1)
60 shell.width = units.gu(120)
64 shell.width = units.gu(120)
61 genericScopeView.categoryView.positionAtBeginning();
65 genericScopeView.categoryView.positionAtBeginning();
62− tryCompare(genericScopeView.categoryView, "contentY", 0)
66+ waitForRendering(genericScopeView.categoryView);
70+ genericScopeView.scope = null;
65 function test_isActive() {
76 function test_isActive() {
@@ -104,90 +115,146 @@ Item {
104 tryCompare(genericScopeView.scope, "searchQuery", "test")
115 tryCompare(genericScopeView.scope, "searchQuery", "test")
107− function test_filter_expand_collapse() {
118+ function test_expand_collapse() {
108− // wait for the item to be there
109− waitForRendering(genericScopeView);
110 tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader0") != null; }, true);
119 tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader0") != null; }, true);
112− var header = findChild(genericScopeView, "dashSectionHeader0")
113 var category = findChild(genericScopeView, "dashCategory0")
121 var category = findChild(genericScopeView, "dashCategory0")
122+ var seeAll = findChild(category, "seeAll")
115− waitForRendering(header);
124+ waitForRendering(seeAll);
116 verify(category.expandable);
125 verify(category.expandable);
117− verify(category.filtered);
126+ verify(!category.expanded);
119 var initialHeight = category.height;
128 var initialHeight = category.height;
121− mouseClick(header, header.width / 2, header.height / 2);
129+ mouseClick(seeAll, seeAll.width / 2, seeAll.height / 2);
130+ verify(category.expanded);
122− tryCompareFunction(function() { middleHeight = category.height; return category.height > initialHeight; }, true);
131+ tryCompareFunction(function() { return category.height > initialHeight; }, true);
123− tryCompare(category, "filtered", false);
124− tryCompareFunction(function() { return category.height > middleHeight; }, true);
126− mouseClick(header, header.width / 2, header.height / 2);
133+ mouseClick(seeAll, seeAll.width / 2, seeAll.height / 2);
127− verify(category.expandable);
134+ verify(!category.expanded);
128− tryCompare(category, "filtered", true);
131− function test_filter_expand_expand_collapse() {
137+ function test_expand_expand_collapse() {
132 // wait for the item to be there
138 // wait for the item to be there
133 tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader2") != null; }, true);
139 tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader2") != null; }, true);
135 var categoryListView = findChild(genericScopeView, "categoryListView");
141 var categoryListView = findChild(genericScopeView, "categoryListView");
136 categoryListView.contentY = categoryListView.height;
142 categoryListView.contentY = categoryListView.height;
138− var header2 = findChild(genericScopeView, "dashSectionHeader2")
139 var category2 = findChild(genericScopeView, "dashCategory2")
144 var category2 = findChild(genericScopeView, "dashCategory2")
140− var category2FilterGrid = category2.children[1].children[2];
145+ var seeAll2 = findChild(category2, "seeAll")
141− verify(UT.Util.isInstanceOf(category2FilterGrid, "CardFilterGrid"));
143− waitForRendering(header2);
147+ waitForRendering(seeAll2);
144 verify(category2.expandable);
148 verify(category2.expandable);
145− verify(category2.filtered);
149+ verify(!category2.expanded);
147− mouseClick(header2, header2.width / 2, header2.height / 2);
151+ mouseClick(seeAll2, seeAll2.width / 2, seeAll2.height / 2);
148− tryCompare(category2, "filtered", false);
152+ tryCompare(category2, "expanded", true);
149− tryCompare(category2FilterGrid, "filtered", false);
151 categoryListView.positionAtBeginning();
154 categoryListView.positionAtBeginning();
153− var header0 = findChild(genericScopeView, "dashSectionHeader0")
154 var category0 = findChild(genericScopeView, "dashCategory0")
156 var category0 = findChild(genericScopeView, "dashCategory0")
157+ var seeAll0 = findChild(category0, "seeAll")
155− mouseClick(header0, header0.width / 2, header0.height / 2);
158+ mouseClick(seeAll0, seeAll0.width / 2, seeAll0.height / 2);
156− tryCompare(category0, "filtered", false);
159+ tryCompare(category0, "expanded", true);
157− tryCompare(category2, "filtered", true);
160+ tryCompare(category2, "expanded", false);
158− tryCompare(category2FilterGrid, "filtered", true);
161+ mouseClick(seeAll0, seeAll0.width / 2, seeAll0.height / 2);
162+ tryCompare(category0, "expanded", false);
163+ tryCompare(category2, "expanded", false);
166+ function test_headerLink() {
167+ tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader1") != null; }, true);
168+ var header = findChild(genericScopeView, "dashSectionHeader1");
170+ spy.target = genericScopeView.scope;
171+ spy.signalName = "performQuery";
159− mouseClick(header0, header0.width / 2, header0.height / 2);
173+ mouseClick(header, header.width / 2, header.height / 2);
160− tryCompare(category0, "filtered", true);
174+
161− tryCompare(category2, "filtered", true);
175+ spy.wait();
176+ compare(spy.signalArguments[0][0], genericScopeView.scope.categories.data(1, Categories.RoleHeaderLink));
179+ function test_headerLink_disable_expansion() {
180+ var categoryListView = findChild(genericScopeView, "categoryListView");
181+ waitForRendering(categoryListView);
183+ categoryListView.contentY = categoryListView.height * 2;
185+ // wait for the item to be there
186+ tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader4") != null; }, true);
188+ var categoryView = findChild(genericScopeView, "dashCategory4");
189+ verify(categoryView, "Can't find the category view.");
191+ var seeAll = findChild(categoryView, "seeAll");
192+ verify(seeAll, "Can't find the seeAll element");
194+ compare(seeAll.height, 0, "SeeAll should be 0-height.");
198+ compare(testCase.previewListView.count, 12, "There should only be 12 items in preview.");
164 function test_narrow_delegate_ranges_expand() {
201 function test_narrow_delegate_ranges_expand() {
165− tryCompareFunction(function() { return findChild(genericScopeView, "dashCategory0") != undefined; }, true);
202+ tryCompareFunction(function() { return findChild(genericScopeView, "dashCategory0") !== null; }, true);
166 var category = findChild(genericScopeView, "dashCategory0")
203 var category = findChild(genericScopeView, "dashCategory0")
167− tryCompare(category, "filtered", true);
204+ tryCompare(category, "expanded", false);
169 shell.width = units.gu(20)
206 shell.width = units.gu(20)
170 var categoryListView = findChild(genericScopeView, "categoryListView");
207 var categoryListView = findChild(genericScopeView, "categoryListView");
171 categoryListView.contentY = units.gu(20);
208 categoryListView.contentY = units.gu(20);
172− var header0 = findChild(genericScopeView, "dashSectionHeader0")
209+ var seeAll = findChild(category, "seeAll")
173− mouseClick(header0, header0.width / 2, header0.height / 2);
210+ mouseClick(seeAll, seeAll.width / 2, seeAll.height / 2);
174− tryCompare(category, "filtered", false);
211+ tryCompare(category, "expanded", true);
175 tryCompareFunction(function() { return category.item.height == genericScopeView.height - category.item.displayMarginBeginning - category.item.displayMarginEnd; }, true);
212 tryCompareFunction(function() { return category.item.height == genericScopeView.height - category.item.displayMarginBeginning - category.item.displayMarginEnd; }, true);
176− mouseClick(header0, header0.width / 2, header0.height / 2);
213+ mouseClick(seeAll, seeAll.width / 2, seeAll.height / 2);
177− tryCompare(category, "filtered", true);
214+ tryCompare(category, "expanded", false);
217+ function test_forced_category_expansion() {
218+ tryCompareFunction(function() {
219+ mouseFlick(genericScopeView, genericScopeView.width/2, genericScopeView.height,
220+ genericScopeView.width/2, genericScopeView.y)
221+ return findChild(genericScopeView, "dashCategory19") !== null;
223+ var category = findChild(genericScopeView, "dashCategory19")
224+ compare(category.expandable, false, "Category with collapsed-rows: 0 should not be expandable");
226+ var grid = findChild(category, "19");
227+ verify(grid, "Could not find the category renderer.");
229+ compare(grid.height, grid.expandedHeight, "Category with collapsed-rows: 0 should always be expanded.");
232+ function test_single_category_expansion() {
233+ genericScopeView.scope = scopes.getScope(4);
235+ tryCompareFunction(function() { return findChild(genericScopeView, "dashCategory0") != undefined; }, true);
236+ var category = findChild(genericScopeView, "dashCategory0")
237+ compare(category.expandable, false, "Only category should not be expandable.");
239+ var grid = findChild(category, "0");
240+ verify(grid, "Could not find the category renderer.");
242+ compare(grid.height, grid.expandedHeight, "Only category should always be expanded");
180− function openPreview() {
245+ function openPreview(category, delegate) {
246+ if (category === undefined) category = 0;
247+ if (delegate === undefined) delegate = 0;
181 tryCompareFunction(function() {
248 tryCompareFunction(function() {
182− var filterGrid = findChild(genericScopeView, "0");
249+ var cardGrid = findChild(genericScopeView, category);
183− if (filterGrid != null) {
250+ if (cardGrid != null) {
184− var tile = findChild(filterGrid, "delegate0");
251+ var tile = findChild(cardGrid, "delegate"+delegate);
185 return tile != null;
252 return tile != null;
187 return false;
254 return false;
190− var tile = findChild(findChild(genericScopeView, "0"), "delegate0");
257+ var tile = findChild(findChild(genericScopeView, category), "delegate"+delegate);
191 mouseClick(tile, tile.width / 2, tile.height / 2);
258 mouseClick(tile, tile.width / 2, tile.height / 2);
192 tryCompare(testCase.previewListView, "open", true);
259 tryCompare(testCase.previewListView, "open", true);
193 tryCompare(testCase.previewListView, "x", 0);
260 tryCompare(testCase.previewListView, "x", 0);
@@ -257,7 +324,7 @@ Item {
257 closePreview();
324 closePreview();
260− function test_haeder_logo() {
327+ function test_header_logo() {
261 genericScopeView.scope = scopes.getScope(3);
328 genericScopeView.scope = scopes.getScope(3);
263 var image = findChild(genericScopeView, "titleImage");
330 var image = findChild(genericScopeView, "titleImage");