on xenial help sign in
replace useless test with useful one
2f0fabbMichael Zanetti
qml/Components/PageHeader.qml+4−1
@@ -39,7 +39,10 @@ Item {
39 signal backClicked()
39 signal backClicked()
40
40
41 function triggerSearch() {
41 function triggerSearch() {
42+ if (searchEntryEnabled) {
43+ headerContainer.showSearch = true;
42− if (searchEntryEnabled) searchTextField.forceActiveFocus();
44+ searchTextField.forceActiveFocus();
45+ }
43 }
46 }
44
47
45 function resetSearch(keepFocus) {
48 function resetSearch(keepFocus) {
tests/qmltests/Components/tst_PageHeader.qml+15−4
@@ -23,6 +23,7 @@ import Unity 0.2
23import Unity.Test 0.1 as UT
23import Unity.Test 0.1 as UT
24
24
25Item {
25Item {
26+ id: root
26 width: units.gu(110)
27 width: units.gu(110)
27 height: units.gu(30)
28 height: units.gu(30)
28
29
@@ -167,7 +168,14 @@ Item {
167 tryCompare(headerContainer.popover, "visible", true);
168 tryCompare(headerContainer.popover, "visible", true);
168 }
169 }
169
170
170− function test_resetSearch_closes_popup() {
171+ function test_tap_outside_closes_popup_data() {
172+ return [
173+ { tag: "with search text", searchText: "foobar", hideSearch: false },
174+ { tag: "without search text", searchText: "", hideSearch: true }
175+ ];
176+ }
177+
178+ function test_tap_outside_closes_popup(data) {
171 searchEnabled = true;
179 searchEnabled = true;
172 pageHeader.searchHistory.clear();
180 pageHeader.searchHistory.clear();
173
181
@@ -181,11 +189,14 @@ Item {
181 tryCompareFunction(function() { return headerContainer.popover !== null; }, true);
189 tryCompareFunction(function() { return headerContainer.popover !== null; }, true);
182 compare(headerContainer.popover.visible, true);
190 compare(headerContainer.popover.visible, true);
183
191
184− pageHeader.searchQuery = "test";
192+ pageHeader.searchQuery = data.searchText;
193+
194+ mouseClick(root, root.width / 2, root.height - 1);
195+
196+ tryCompare(headerContainer, "showSearch", !data.hideSearch);
185− tryCompareFunction( function() { return (headerContainer.popover===null || !headerContainer.popover.visible) }, true);
197+ tryCompareFunction(function() { return headerContainer.popover === null; }, true);
186
198
187 pageHeader.resetSearch();
199 pageHeader.resetSearch();
188− compare((headerContainer.popover===null || !headerContainer.popover.visible), true);
189 }
200 }
190 }
201 }
191
202