on xenial help sign in
Add more icon tests
commitc96dafa7fb8e708fde4c4c22bdc683a946ab5353 authorJosh Arenson <joshua.arenson@canonical.com> dateMon 23 Nov 2015, 14:12 (11 years ago) parent0fbc6ba
1 file changed+42−13
tests/qmltests/Greeter/tst_WideView.qml+42−13
tests/qmltests/Greeter/tst_WideView.qml+42−13
@@ -396,28 +396,57 @@ Item {
396396 LightDM.Sessions.iconSearchDirectories = [testIconDirectory]
397397
398398 // Test the login list icon is valid
399− var sessionChooserButton = findChild(view, "sessionChooserButton")
400− compare(sessionChooserButton.visible, true)
399+ var sessionChooserButton = findChild(view, "sessionChooserButton");
400+ compare(sessionChooserButton.visible, true);
401401
402− var session = String(view.sessionToStart).toLowerCase()
403− var icon = String(sessionChooserButton.icon)
404− compare(icon.indexOf(session) > -1, true)
402+ var session = String(view.sessionToStart).toLowerCase();
403+ var icon = String(sessionChooserButton.icon);
404+ compare(icon.indexOf(session) > -1, true);
405405
406406 // Test the session list icons are valid
407− view.loginListShown = false
407+ view.loginListShown = false;
408408 var sessionsList = findChild(view, "sessionsList");
409409 var sessionsListSelector = findChild(view, "sessionsListSelector");
410− waitForRendering(sessionsList)
411− compare(sessionsListSelector.expanded, true)
412− compare(sessionsList.visible, true)
410+ waitForRendering(sessionsList);
411+ compare(sessionsListSelector.expanded, true);
412+ compare(sessionsList.visible, true);
413413
414414 for (var i = 0; i < LightDM.Sessions.count; i++) {
415415 var delegateName = "sessionDelegate" + String(i);
416− var currentDelegate = findChild(view, delegateName)
417− var session = String(currentDelegate.text).toLowerCase()
418− var icon = String(currentDelegate.iconSource)
419− compare(icon.indexOf(session) > -1, true)
416+ var currentDelegate = findChild(view, delegateName);
417+ var session = String(currentDelegate.text).toLowerCase();
418+ var icon = String(currentDelegate.iconSource);
419+ compare(icon.indexOf(session) > -1, true);
420+ }
421+ }
422+
423+ function test_choosingNewSessionChangesLoginListIcon() {
424+ // Ensure the default session is selected (Ubuntu)
425+ loader.active = false;
426+ loader.active = true;
427+
428+ LightDM.Sessions.testScenario = "multipleSessions";
429+ var sessionChooserButton = findChild(view, "sessionChooserButton");
430+ var icon = String(sessionChooserButton.icon);
431+ compare(icon.indexOf("ubuntu") > -1, true);
432+
433+ tap(sessionChooserButton)
434+ var sessionsListSelector = findChild(view, "sessionsListSelector");
435+ waitForRendering(sessionsListSelector);
436+ for(var i = 0; i < LightDM.Sessions.count; i++) {
437+ var delegateName = "sessionDelegate" + String(i);
438+ var currentDelegate = findChild(view, delegateName);
439+ if (currentDelegate.text === "GNOME") {
440+ tap(currentDelegate);
441+ var sessionChooserButton = findChild(view, "sessionChooserButton");
442+ var icon = String(sessionChooserButton.icon);
443+ waitForRendering(sessionChooserButton);
444+ break;
445+ }
420446 }
447+
448+ compare(icon.indexOf("gnome") > -1, true,
449+ "Expected icon to contain gnome but it was " + icon);
421450 }
422451
423452 function test_noSessionsDoesntBreakView() {