on xenial help sign in
fix the language tests
commit282c933df7bd4efc3cd2b3177d12e838c8187075 authorLukáš Tinkl <lukas.tinkl@canonical.com> dateFri 4 Dec 2015, 00:30 (11 years ago) parentb942489
4 files changed+11−21
qml/Wizard/Pages/10-language.qml+2−1 tests/mocks/Ubuntu/SystemSettings/CMakeLists.txt+1−1 tests/mocks/Ubuntu/SystemSettings/LanguagePlugin/MockLanguagePlugin.qml+1−1 tests/qmltests/Wizard/tst_Wizard.qml+7−18
qml/Wizard/Pages/10-language.qml+2−1
@@ -108,6 +108,7 @@ LocalComponents.Page {
108108
109109 delegate: ListItem {
110110 id: itemDelegate
111+ objectName: "languageDelegate" + index
111112 highlightColor: backgroundColor
112113 readonly property bool isCurrent: index === ListView.view.currentIndex
113114
@@ -151,7 +152,7 @@ LocalComponents.Page {
151152 id: forwardButton
152153 LocalComponents.StackButton {
153154 text: i18n.tr("Next")
154− enabled: languagesListView.currentIndex
155+ enabled: languagesListView.currentIndex != -1
155156 onClicked: {
156157 if (plugin.currentLanguage !== languagesListView.currentIndex) {
157158 plugin.currentLanguage = languagesListView.currentIndex;
tests/mocks/Ubuntu/SystemSettings/CMakeLists.txt+1−1
@@ -1,2 +1,2 @@
1−#add_subdirectory(LanguagePlugin)
1+add_subdirectory(LanguagePlugin)
22add_subdirectory(SecurityPrivacy)
tests/mocks/Ubuntu/SystemSettings/LanguagePlugin/MockLanguagePlugin.qml+1−1
@@ -18,6 +18,6 @@ import QtQuick 2.4
1818
1919Item {
2020 property var languageNames: ["English", "French", "Spanish"]
21− property var languageCodes: ["en", "fr", "es"]
21+ property var languageCodes: ["en_US", "fr_FR", "es_ES"]
2222 property int currentLanguage: 0
2323}
tests/qmltests/Wizard/tst_Wizard.qml+7−18
@@ -221,28 +221,17 @@ Item {
221221
222222 function test_languageChange() {
223223 var page = goToPage("languagePage");
224− tap(findChild(page, "languageCombo"));
225− waitForRendering(findChild(page, "languageDelegate1"));
226−
227− // For some reason, the delegate *sometimes* (like 1 in 10 maybe)
228− // needs more time before it can process a tap() call. I can't
229− // find a rhyme or reason, its properties all seem the same in
230− // cases where it works and does not. This failure to receive a
231− // tap() call below does *not* happen when running in xvfb, so
232− // jenkins is unaffected (and we don't have to worry about 100 not
233− // being enough time in its slow environment). This wait() call is
234− // just to help local runs not trip up.
235− wait(100);
236− tap(findChild(page, "languageDelegate1"));
237−
238− tryCompare(i18n, "language", "fr");
224+ tap(findChild(page, "languageDelegate1")); // should invoke "fr" lang
225+
226+ tryCompare(i18n, "language", "fr_FR");
239227 tap(findChild(page, "forwardButton"));
240228 tryCompare(updateSessionLanguageSpy, "count", 1);
241− compare(updateSessionLanguageSpy.signalArguments[0][0], "fr");
229+ compare(updateSessionLanguageSpy.signalArguments[0][0], "fr_FR");
242230 }
243231
244232 function test_languageNoChange() {
245− goToPage("simPage"); // one past language page
233+ var page = goToPage("languagePage"); // one past language page
234+ tap(findChild(page, "forwardButton"));
246235 compare(updateSessionLanguageSpy.count, 0);
247236 }
248237
@@ -449,7 +438,7 @@ Item {
449438 }
450439
451440 function test_locationGpsOnly() {
452− var page = goToPage("locationPage");
441+ var page = goToPage("locationPage", true);
453442 var gpsCheck = findChild(page, "gpsCheckLabel");
454443 var hereCheck = findChild(page, "hereCheckLabel");
455444 var nopeCheck = findChild(page, "nopeCheckLabel");