Tweak Clocks alarm test for change in upstream code

Upstream now sets an alarm with no explicit recurrence inactive
after it is stopped (previously it assumed recurrence every day).
We need the test to handle both behaviours for a while (until
we are no longer testing < 46.0 anywhere).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
Adam Williamson 2024-03-24 09:45:47 -07:00
parent 37150e430f
commit 8ebf3bdddb
1 changed files with 15 additions and 5 deletions

View File

@ -30,14 +30,24 @@ sub run {
# After another minute or so, the alarm should ring again. # After another minute or so, the alarm should ring again.
# This time we will use the stop button to stop it. # This time we will use the stop button to stop it.
assert_and_click("clocks_button_alarm_stop", timeout => 120); assert_and_click("clocks_button_alarm_stop", timeout => 120);
# The alarm should switch off but should stay listed active. # Up to 46.0, the alarm would stay active after being stopped; from
assert_screen("clocks_alarm_active"); # 46.0 onwards it goes inactive. FIXME this can be simplified to
# Now toggle the switch to inactivate it. # assume it starts at 'inactive' once we are no longer testing
# < 46.0 anywhere
assert_screen(["clocks_alarm_active", "clocks_alarm_inactive"]);
# Now toggle the switch to change its state
assert_and_click("gnome_button_toggle"); assert_and_click("gnome_button_toggle");
assert_screen("clocks_alarm_inactive"); # whichever state it was in, check it's now in the other
if (match_has_tag("clocks_alarm_active")) {
assert_screen("clocks_alarm_inactive");
}
else {
assert_screen("clocks_alarm_active");
}
# Delete alarm using the delete button. # Delete alarm using the delete button.
assert_and_click("gnome_button_cross_remove"); assert_and_click("gnome_button_cross_remove");
if (check_screen("clocks_alarm_inactive")) { sleep 2;
if (check_screen(["clocks_alarm_active", "clocks_alarm_inactive"])) {
die("The alarm should have been deleted but it is still visible in the GUI"); die("The alarm should have been deleted but it is still visible in the GUI");
} }