diff options
author | Charles Kerr <charles.kerr@canonical.com> | 2015-01-15 13:15:27 -0600 |
---|---|---|
committer | Charles Kerr <charles.kerr@canonical.com> | 2015-01-15 13:15:27 -0600 |
commit | 14c515bd83b9773880f30f4748505ce4a3d5f1fe (patch) | |
tree | 0f172f5d51713c111e7d04508a03b1af18ee8d78 | |
parent | f926c6711feb56d831f5a09d6be6d62bf87cd87b (diff) | |
download | ayatana-indicator-datetime-14c515bd83b9773880f30f4748505ce4a3d5f1fe.tar.gz ayatana-indicator-datetime-14c515bd83b9773880f30f4748505ce4a3d5f1fe.tar.bz2 ayatana-indicator-datetime-14c515bd83b9773880f30f4748505ce4a3d5f1fe.zip |
strengthen the test that decides if an icalcomponent is a one-shot or repeating.
-rw-r--r-- | src/engine-eds.cpp | 7 | ||||
-rw-r--r-- | tests/manual | 6 |
2 files changed, 11 insertions, 2 deletions
diff --git a/src/engine-eds.cpp b/src/engine-eds.cpp index 210ef42..47c7a9b 100644 --- a/src/engine-eds.cpp +++ b/src/engine-eds.cpp @@ -534,8 +534,11 @@ private: icalcomponent * icc = nullptr; if (e_cal_client_get_object_finish (E_CAL_CLIENT(client), result, &icc, nullptr)) { - struct icaltimetype itt = icalcomponent_get_recurrenceid(icc); - if (icaltime_is_null_time(itt)) + auto rrule_property = icalcomponent_get_first_property (icc, ICAL_RRULE_PROPERTY); // transfer none + auto rdate_property = icalcomponent_get_first_property (icc, ICAL_RDATE_PROPERTY); // transfer none + const bool is_nonrepeating = (rrule_property == nullptr) && (rdate_property == nullptr); + + if (is_nonrepeating) { g_debug("'%s' appears to be a one-time alarm... adding 'disabled' tag.", icalcomponent_as_ical_string(icc)); diff --git a/tests/manual b/tests/manual index 71d1e06..c283422 100644 --- a/tests/manual +++ b/tests/manual @@ -56,6 +56,12 @@ Test-case indicator-datetime/disable-one-time-alarms-after-notification <dd>Confirm that the alarm notification is shown</dd> <dd>Confirm that the alarm's sound is played while the alarm notification is present</dd> <dd>Confirm that the one-time alarm is disabled after the notification is shown. NOTE: due to a refresh bug in clock-app you may need to refresh its alarms page (by swapping back to the main page, then the alarm page again, this is tracked in #1362341) in order to see the alarm change from enabled to disabled.</dd> + <dt>Create and save an upcoming repeating alarm in ubuntu-clock-app</dt> + <dd>Confirm that the alarm icon appears next to the current time in unity's indicator display</dd> + <dt>Wait until the alarm time is reached</dt> + <dd>Confirm that the alarm notification is shown</dd> + <dd>Confirm that the alarm's sound is played while the alarm notification is present</dd> + <dd>Confirm that the repeating alarm is not disabled after the notification is shown. NOTE: due to a refresh bug in clock-app you may need to refresh its alarms page (by swapping back to the main page, then the alarm page again, this is tracked in #1362341) in order to see the alarm change from enabled to disabled.</dd> </dl> Test-case indicator-datetime/calendar-event-notification |