[california] Use DM when parsing for YMD locales: Bug #735096
- From: Jim Nelson <jnelson src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [california] Use DM when parsing for YMD locales: Bug #735096
- Date: Fri, 22 Aug 2014 22:55:56 +0000 (UTC)
commit f7ee14fa27450a332e947c37e10e7d1942f61af4
Author: Jim Nelson <jim yorba org>
Date: Fri Aug 22 15:54:07 2014 -0700
Use DM when parsing for YMD locales: Bug #735096
User reports that although their locale uses dates in YMD format,
DM is used for two-digit dates (i.e. "9/6" is June 9th). Updating
DetailsParser to reflect this custom.
src/component/component-details-parser.vala | 6 +++---
src/tests/tests-quick-add.vala | 20 ++++++++++++++++++++
2 files changed, 23 insertions(+), 3 deletions(-)
---
diff --git a/src/component/component-details-parser.vala b/src/component/component-details-parser.vala
index fe57080..f59b284 100644
--- a/src/component/component-details-parser.vala
+++ b/src/component/component-details-parser.vala
@@ -886,9 +886,9 @@ public class DetailsParser : BaseObject {
m = b;
y = a;
} else {
- // MD
- d = b;
- m = a;
+ // DM; see https://bugzilla.gnome.org/show_bug.cgi?id=735096
+ d = a;
+ m = b;
y = -1;
}
break;
diff --git a/src/tests/tests-quick-add.vala b/src/tests/tests-quick-add.vala
index 19e6b3e..168ea73 100644
--- a/src/tests/tests-quick-add.vala
+++ b/src/tests/tests-quick-add.vala
@@ -58,6 +58,7 @@ private class QuickAdd : UnitTest.Harness {
add_case("quoted", quoted);
add_case("open-quoted", open_quoted);
add_case("quoted-atsign", quoted_atsign);
+ add_case("ymd-dm", ymd_dm);
}
protected override void setup() throws Error {
@@ -677,6 +678,25 @@ private class QuickAdd : UnitTest.Harness {
&& parser.event.exact_time_span.end_exact_time.minute == 0
&& parser.event.exact_time_span.get_date_span().equal_to(Calendar.System.today.to_date_span());
}
+
+ // See https://bugzilla.gnome.org/show_bug.cgi?id=735096
+ private bool ymd_dm(out string? dump) throws Error {
+ Calendar.DateOrdering saved = Calendar.System.date_ordering;
+ Calendar.System.date_ordering = Calendar.DateOrdering.YMD;
+
+ Component.DetailsParser parser = new Component.DetailsParser(
+ "Meeting at 9/6", null);
+
+ Calendar.System.date_ordering = saved;
+
+ dump = parser.event.source;
+
+ return parser.event.summary == "Meeting"
+ && California.String.is_empty(parser.event.location)
+ && parser.event.is_all_day
+ && parser.event.date_span.start_date.day_of_month.value == 9
+ && parser.event.date_span.start_date.month.value == 6;
+ }
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]