diff --git a/jollyday-core/src/main/java/de/focus_shift/jollyday/core/HolidayCalendar.java b/jollyday-core/src/main/java/de/focus_shift/jollyday/core/HolidayCalendar.java index 53c9636ac..89f9cb5b4 100644 --- a/jollyday-core/src/main/java/de/focus_shift/jollyday/core/HolidayCalendar.java +++ b/jollyday-core/src/main/java/de/focus_shift/jollyday/core/HolidayCalendar.java @@ -5,7 +5,6 @@ /** * This enum provides a list of all supported holiday calendars. * - * @author Sven Diedrichsen (sven.diedrichsen@gmail.com) * @version $Id$ */ public enum HolidayCalendar { @@ -47,5 +46,4 @@ public enum HolidayCalendar { public String getId() { return id; } - } diff --git a/jollyday-core/src/main/resources/holidays/Holidays_at.xml b/jollyday-core/src/main/resources/holidays/Holidays_at.xml index ca71d3d3d..3f020b86b 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_at.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_at.xml @@ -23,56 +23,56 @@ - + - + - + - + - + - + - + - + - + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_au.xml b/jollyday-core/src/main/resources/holidays/Holidays_au.xml index 908ab4fc8..5dd1ae26e 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_au.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_au.xml @@ -43,6 +43,7 @@ + @@ -69,13 +70,14 @@ + descriptionPropertiesKey="FAMILY_COMMUNITY"/> + descriptionPropertiesKey="RECONCILIATION"> + @@ -95,9 +97,10 @@ + descriptionPropertiesKey="BANK_HOLIDAY"/> + @@ -123,6 +126,7 @@ + @@ -142,10 +146,11 @@ + descriptionPropertiesKey="QUEENS_BIRTHDAY"/> + descriptionPropertiesKey="QUEENS_BIRTHDAY"/> + @@ -155,6 +160,7 @@ + @@ -186,6 +192,7 @@ + @@ -205,17 +212,21 @@ + + + + @@ -233,10 +244,10 @@ - + + @@ -260,10 +271,9 @@ - + + descriptionPropertiesKey="WESTERN_AUSTRALIA"/> diff --git a/jollyday-core/src/main/resources/holidays/Holidays_ba.xml b/jollyday-core/src/main/resources/holidays/Holidays_ba.xml index 643f0ed30..259e88272 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_ba.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_ba.xml @@ -25,14 +25,16 @@ - + + - + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_be.xml b/jollyday-core/src/main/resources/holidays/Holidays_be.xml index a4e0ec499..4f8bef3ab 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_be.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_be.xml @@ -16,13 +16,9 @@ - - - - + + + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_br.xml b/jollyday-core/src/main/resources/holidays/Holidays_br.xml index dd3c2f003..628fa702d 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_br.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_br.xml @@ -19,6 +19,7 @@ + @@ -31,6 +32,7 @@ + @@ -42,8 +44,9 @@ + - + @@ -51,64 +54,76 @@ + + + + - + + + + + + + + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_ca.xml b/jollyday-core/src/main/resources/holidays/Holidays_ca.xml index 275c230e8..072a6bc8b 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_ca.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_ca.xml @@ -12,6 +12,7 @@ + @@ -24,6 +25,7 @@ + @@ -35,6 +37,7 @@ + @@ -47,17 +50,20 @@ + + + @@ -70,6 +76,7 @@ + @@ -82,6 +89,7 @@ + @@ -94,6 +102,7 @@ + @@ -106,11 +115,13 @@ + + @@ -124,6 +135,7 @@ + @@ -137,9 +149,11 @@ + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_de.xml b/jollyday-core/src/main/resources/holidays/Holidays_de.xml index 34fa8bb40..6335f06fb 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_de.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_de.xml @@ -39,7 +39,6 @@ - WEDNESDAY BEFORE @@ -75,36 +74,39 @@ - - WEDNESDAY - BEFORE - - - + WEDNESDAY + BEFORE + + + + + + + @@ -119,7 +121,6 @@ BEFORE - @@ -136,13 +137,11 @@ - WEDNESDAY BEFORE - @@ -150,13 +149,11 @@ - WEDNESDAY BEFORE - @@ -165,13 +162,11 @@ - WEDNESDAY BEFORE - @@ -179,7 +174,6 @@ - WEDNESDAY BEFORE @@ -205,7 +199,6 @@ - WEDNESDAY BEFORE @@ -217,7 +210,6 @@ - WEDNESDAY BEFORE @@ -229,7 +221,6 @@ - WEDNESDAY BEFORE @@ -241,7 +232,6 @@ - WEDNESDAY BEFORE diff --git a/jollyday-core/src/main/resources/holidays/Holidays_es.xml b/jollyday-core/src/main/resources/holidays/Holidays_es.xml index de2bba77e..a9aa80a38 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_es.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_es.xml @@ -15,6 +15,7 @@ + @@ -26,6 +27,7 @@ + @@ -36,6 +38,7 @@ + @@ -44,6 +47,7 @@ + @@ -52,6 +56,7 @@ + @@ -60,6 +65,7 @@ + @@ -68,6 +74,7 @@ + @@ -75,6 +82,7 @@ + @@ -88,7 +96,9 @@ + + @@ -97,6 +107,7 @@ + @@ -106,6 +117,7 @@ + @@ -114,6 +126,7 @@ + @@ -122,7 +135,8 @@ - + + @@ -135,8 +149,10 @@ + - + + @@ -144,7 +160,8 @@ - + + @@ -152,7 +169,8 @@ - + + @@ -162,6 +180,7 @@ + @@ -171,13 +190,15 @@ - + + + @@ -186,6 +207,7 @@ + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_fi.xml b/jollyday-core/src/main/resources/holidays/Holidays_fi.xml index a1327af37..fb23c544a 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_fi.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_fi.xml @@ -29,7 +29,8 @@ - + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_fr.xml b/jollyday-core/src/main/resources/holidays/Holidays_fr.xml index 5cbe6cc81..f406d0cba 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_fr.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_fr.xml @@ -18,41 +18,52 @@ - - - - + + + + + + + + + + + + + + + + + + + + + + + - + + - - - - - - - - - - - + + - - + - + + - - + - + + - + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_in.xml b/jollyday-core/src/main/resources/holidays/Holidays_in.xml index 22afcd342..0eb349942 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_in.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_in.xml @@ -26,6 +26,7 @@ + @@ -36,6 +37,7 @@ + @@ -46,6 +48,7 @@ + @@ -58,6 +61,7 @@ + @@ -67,6 +71,7 @@ + @@ -76,6 +81,7 @@ + @@ -84,6 +90,7 @@ + @@ -91,6 +98,7 @@ + @@ -98,6 +106,7 @@ + @@ -105,6 +114,7 @@ + @@ -120,6 +130,7 @@ + @@ -131,6 +142,7 @@ + @@ -140,6 +152,7 @@ + @@ -152,6 +165,7 @@ + @@ -163,6 +177,7 @@ + @@ -173,6 +188,7 @@ + @@ -183,6 +199,7 @@ + @@ -193,6 +210,7 @@ + @@ -202,12 +220,14 @@ + + @@ -216,6 +236,7 @@ + @@ -226,6 +247,7 @@ + @@ -240,6 +262,7 @@ + @@ -249,6 +272,7 @@ + @@ -261,6 +285,7 @@ + @@ -273,6 +298,7 @@ + @@ -285,6 +311,7 @@ + @@ -296,6 +323,7 @@ + @@ -307,6 +335,7 @@ + @@ -317,6 +346,7 @@ + @@ -326,6 +356,7 @@ + @@ -335,6 +366,7 @@ + @@ -343,6 +375,7 @@ + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_is.xml b/jollyday-core/src/main/resources/holidays/Holidays_is.xml index 2eb040720..683897e54 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_is.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_is.xml @@ -26,8 +26,7 @@ - + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_it.xml b/jollyday-core/src/main/resources/holidays/Holidays_it.xml index 420626a92..d22bd6d25 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_it.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_it.xml @@ -18,7 +18,8 @@ - + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_lu.xml b/jollyday-core/src/main/resources/holidays/Holidays_lu.xml index 6ef2c3631..3a64d388e 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_lu.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_lu.xml @@ -4,6 +4,7 @@ xmlns="https://focus_shift.de/jollyday/schema/holiday" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd"> + @@ -17,9 +18,14 @@ - - - - + + + + + + + + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_md.xml b/jollyday-core/src/main/resources/holidays/Holidays_md.xml index 5ebfaa8ab..f363de321 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_md.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_md.xml @@ -19,7 +19,7 @@ - + https://www.iso.org/obp/ui/#iso:code:3166:MD https://en.wikipedia.org/wiki/ISO_3166-2:MD diff --git a/jollyday-core/src/main/resources/holidays/Holidays_mx.xml b/jollyday-core/src/main/resources/holidays/Holidays_mx.xml index aab0457f8..0cf9e9646 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_mx.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_mx.xml @@ -35,6 +35,7 @@ + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_ng.xml b/jollyday-core/src/main/resources/holidays/Holidays_ng.xml index fe5ea2980..d7dfa5c38 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_ng.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_ng.xml @@ -20,7 +20,8 @@ - + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_ni.xml b/jollyday-core/src/main/resources/holidays/Holidays_ni.xml index 3decf6a50..385c8f58e 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_ni.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_ni.xml @@ -19,40 +19,63 @@ - + + - - - - + + + + + + + + + - + + + + + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + - - - - + + + + + + + + + + + + + + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_nyse.xml b/jollyday-core/src/main/resources/holidays/Holidays_nyse.xml index e808c6d5e..c7caaeba8 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_nyse.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_nyse.xml @@ -6,46 +6,31 @@ xsi:schemaLocation="https://focus_shift.de/jollyday/schema/holiday https://focus_shift.de/jollyday/schema/holiday/holiday.xsd"> - - + + - - + + - - - - - - - - - - - + + + + + + + + month="JANUARY" descriptionPropertiesKey="MARTIN_LUTHER_KING"/> + month="FEBRUARY" descriptionPropertiesKey="WASHINGTONS_BIRTHDAY"/> + month="MAY" descriptionPropertiesKey="MEMORIAL_DAY"/> + month="SEPTEMBER" descriptionPropertiesKey="LABOUR_DAY"/> + month="NOVEMBER" descriptionPropertiesKey="THANKSGIVING"/> diff --git a/jollyday-core/src/main/resources/holidays/Holidays_nz.xml b/jollyday-core/src/main/resources/holidays/Holidays_nz.xml index 068102892..4dc379d8e 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_nz.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_nz.xml @@ -40,67 +40,99 @@ - + - + - + - + - + - + - + - + + + + + + https://en.wikipedia.org/wiki/Public_holidays_in_New_Zealand + https://www.mbie.govt.nz/assets/matariki-dates-2022-to-2052-matariki-advisory-group.pdf + https://www.iso.org/obp/ui/#iso:code:3166:NZ + https://en.wikipedia.org/wiki/ISO_3166-2:NZ + + - + - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + @@ -109,66 +141,84 @@ - + + - - + + + + + - - - - - - - + + - - + + + - + + - - - + + + - + + - + - + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_pt.xml b/jollyday-core/src/main/resources/holidays/Holidays_pt.xml index 4836ee20f..6f77a5480 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_pt.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_pt.xml @@ -20,1570 +20,1935 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jollyday-core/src/main/resources/holidays/Holidays_us.xml b/jollyday-core/src/main/resources/holidays/Holidays_us.xml index d339d61b5..029c88684 100644 --- a/jollyday-core/src/main/resources/holidays/Holidays_us.xml +++ b/jollyday-core/src/main/resources/holidays/Holidays_us.xml @@ -14,193 +14,156 @@ - + - - - - - - + + + + + + + - - + + - + + - - + + + - - - - + + + + + - - - + + + + - - - + + + + + + - - - - + + + + + - - - - + + + + + - - - + + + + - - - - + + + + + - - - - + + + + + - - - + + + + - - - - + + + + + - - + + - - - + + + + @@ -210,55 +173,52 @@ - + + - + + - + + - + + - + + - - - - + + + + + @@ -268,25 +228,19 @@ - - - + + + + - - - + + + - + @@ -294,149 +248,125 @@ + + - - - + + + + - - - + + + + - - - + + + + - - - - + + + + + - + - - + + + - - - + + + - + + - - - + + + + - - - + + + + - + - - - + + + + - - + + + - + - - - + + + @@ -445,11 +375,11 @@ + - + @@ -458,227 +388,184 @@ + + - - - + + + + - - - - + + + + + - - - + + + + - - - + + + + - - - - + + + + + - + + - + - - + + + - - - - + + + + + - - - + + + + - - - + + + + - - - - + + + + + - - - + + + - + + - + - + - - - + + + + - - - + + + + - - - - + + + + + - - - - + + + + + - + - - + + - + + - - - + + + diff --git a/jollyday-core/src/test/java/de/focus_shift/jollyday/core/HolidayCalendarTest.java b/jollyday-core/src/test/java/de/focus_shift/jollyday/core/HolidayCalendarTest.java new file mode 100644 index 000000000..feb5a2bb8 --- /dev/null +++ b/jollyday-core/src/test/java/de/focus_shift/jollyday/core/HolidayCalendarTest.java @@ -0,0 +1,24 @@ +package de.focus_shift.jollyday.core; + +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Locale; +import java.util.Set; + +import static java.util.Arrays.stream; +import static org.assertj.core.api.Assertions.assertThat; + +class HolidayCalendarTest { + + private static final List noneIso3166Countries = List.of("DJ_STOXX", "LME", "NYSE", "TARGET", "XK"); + + @Test + void ensureThatAllCountryAreISO3166Conform() { + final Set isoCountries = Set.of(Locale.getISOCountries()); + + stream(HolidayCalendar.values()) + .filter(holidayCalendar -> !noneIso3166Countries.contains(holidayCalendar.getId())) + .forEach(holidayCalendar -> assertThat(holidayCalendar.getId()).isIn(isoCountries)); + } +} diff --git a/jollyday-tests/pom.xml b/jollyday-tests/pom.xml index bdce0fdc8..5fcaa7c83 100644 --- a/jollyday-tests/pom.xml +++ b/jollyday-tests/pom.xml @@ -50,6 +50,12 @@ jqwik test + + com.vitorsvieira + scala-iso_2.12 + 0.1.2 + test + diff --git a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/CalendarHierarchyTest.java b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/CalendarHierarchyTest.java new file mode 100644 index 000000000..9742bd7a0 --- /dev/null +++ b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/CalendarHierarchyTest.java @@ -0,0 +1,47 @@ +package de.focus_shift.jollyday.tests; + +import com.vitorsvieira.iso.CountrySubdivision; +import com.vitorsvieira.iso.ISOCountry; +import com.vitorsvieira.iso.ISOCountrySubdivision; +import de.focus_shift.jollyday.core.HolidayCalendar; +import de.focus_shift.jollyday.core.HolidayManager; +import org.junit.jupiter.api.Test; +import scala.collection.JavaConverters; + +import java.util.Arrays; +import java.util.Collection; +import java.util.List; + +import static de.focus_shift.jollyday.core.HolidayManager.getInstance; +import static de.focus_shift.jollyday.core.ManagerParameters.create; +import static java.util.stream.Collectors.toList; +import static org.assertj.core.api.Assertions.assertThat; + +class CalendarHierarchyTest { + + private static final List noneIso3166Countries = List.of("DJ_STOXX", "LME", "NYSE", "TARGET", "XK", "FR"); + private static final List okSubdivisions = List.of("FI-01"); + + @Test + void ensureThatAllCountryAreISO3166Conform() { + Arrays.stream(HolidayCalendar.values()) + .filter(holidayCalendar -> !noneIso3166Countries.contains(holidayCalendar.getId())) + .forEach(holidayCalendar -> { + + final ISOCountry.EnumVal enumVal = ISOCountry.from(holidayCalendar.getId()).get(); + final Collection subdivisionVector = JavaConverters.asJavaCollection(ISOCountrySubdivision.fromCountry(enumVal)); + final List subdivisions = subdivisionVector.stream() + .map(CountrySubdivision.EnumVal::toString) + .collect(toList()); + + final HolidayManager holidayManager = getInstance(create(holidayCalendar)); + holidayManager.getCalendarHierarchy().getChildren().keySet() + .forEach(subdivision -> { + final String subdivisionWithCountry = holidayCalendar.getId() + "-" + subdivision.toUpperCase(); + if(!okSubdivisions.contains(subdivisionWithCountry)) { + assertThat(subdivisionWithCountry).isIn(subdivisions); + } + }); + }); + } +} diff --git a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/Iso3166Test.java b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/Iso3166Test.java new file mode 100644 index 000000000..3f6999dad --- /dev/null +++ b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/Iso3166Test.java @@ -0,0 +1,25 @@ +package de.focus_shift.jollyday.tests; + +import de.focus_shift.jollyday.core.HolidayCalendar; +import org.junit.jupiter.api.Test; + +import java.util.List; +import java.util.Locale; +import java.util.Set; + +import static java.util.Arrays.stream; +import static org.assertj.core.api.Assertions.assertThat; + +class Iso3166Test { + + private static final List noneIso3166Countries = List.of("DJ_STOXX", "LME", "NYSE", "TARGET", "XK"); + + @Test + void ensureThatAllCountryAreISO3166Conform() { + final Set isoCountries = Set.of(Locale.getISOCountries()); + + stream(HolidayCalendar.values()) + .filter(holidayCalendar -> !noneIso3166Countries.contains(holidayCalendar.getId())) + .forEach(holidayCalendar -> assertThat(holidayCalendar.getId()).isIn(isoCountries)); + } +} diff --git a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayITTest.java b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayITTest.java index 13572c865..ec5d30239 100644 --- a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayITTest.java +++ b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayITTest.java @@ -159,7 +159,7 @@ void ensuresThatWhitMondayIsNoPublicHolidayInItalyIsConfigured(@ForAll @YearRang @Property void ensuresThatWhitMondayInBZIsConfigured(@ForAll @YearRange Year year) { final HolidayManager holidayManager = HolidayManager.getInstance(create(ITALY)); - final Set holidays = holidayManager.getHolidays(year.getValue(), "bz"); + final Set holidays = holidayManager.getHolidays(year.getValue(), "32"); assertThat(holidays) .isNotEmpty() .extracting(Holiday::getPropertiesKey) diff --git a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayLUTest.java b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayLUTest.java index f6bdb85d3..055d1e301 100644 --- a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayLUTest.java +++ b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayLUTest.java @@ -16,6 +16,7 @@ import static de.focus_shift.jollyday.core.ManagerParameters.create; import static java.time.Month.AUGUST; import static java.time.Month.DECEMBER; +import static java.time.Month.FEBRUARY; import static java.time.Month.JANUARY; import static java.time.Month.JUNE; import static java.time.Month.MAY; @@ -134,4 +135,13 @@ void ensuresThatWhitMondayIsConfigured(@ForAll @YearRange Year year) { .extracting(Holiday::getPropertiesKey) .contains("christian.WHIT_MONDAY"); } + + @Property + void ensuresThatCarnivalForCityOfLuxemburgIsConfigured(@ForAll @YearRange Year year) { + final HolidayManager holidayManager = HolidayManager.getInstance(create(LUXEMBOURG)); + final Set holidays = holidayManager.getHolidays(year.getValue(), "lu", "clu"); + assertThat(holidays) + .isNotEmpty() + .contains(new Holiday(LocalDate.of(year.getValue(), FEBRUARY, 15), "CARNIVAL", OFFICIAL_HOLIDAY)); + } } diff --git a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayNZTest.java b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayNZTest.java index c1697d465..6501701cb 100644 --- a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayNZTest.java +++ b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayNZTest.java @@ -11,6 +11,8 @@ import java.time.LocalDate; import java.util.Set; +import static de.focus_shift.jollyday.core.HolidayCalendar.NEW_ZEALAND; +import static de.focus_shift.jollyday.core.ManagerParameters.*; import static org.assertj.core.api.Assertions.assertThat; class HolidayNZTest extends AbstractCountryTestBase { @@ -19,8 +21,7 @@ class HolidayNZTest extends AbstractCountryTestBase { private static final int YEAR = 2018; private final CalendarUtil calendarUtil = new CalendarUtil(); - private final HolidayManager holidayManager = HolidayManager - .getInstance(ManagerParameters.create(HolidayCalendar.NEW_ZEALAND)); + private final HolidayManager holidayManager = HolidayManager.getInstance(create(NEW_ZEALAND)); @Test void testManagerNZStructure() { diff --git a/jollyday-tests/src/test/resources/holidays/Holidays_test_es_2010.xml b/jollyday-tests/src/test/resources/holidays/Holidays_test_es_2010.xml index 0bae7dfe8..ae43163a7 100644 --- a/jollyday-tests/src/test/resources/holidays/Holidays_test_es_2010.xml +++ b/jollyday-tests/src/test/resources/holidays/Holidays_test_es_2010.xml @@ -14,6 +14,7 @@ + @@ -22,6 +23,7 @@ + @@ -29,6 +31,7 @@ + @@ -37,6 +40,7 @@ + @@ -45,6 +49,7 @@ + @@ -53,6 +58,7 @@ + @@ -61,6 +67,7 @@ + @@ -68,6 +75,7 @@ + @@ -75,11 +83,13 @@ + + @@ -97,6 +107,7 @@ + @@ -105,6 +116,7 @@ + @@ -113,7 +125,8 @@ - + + @@ -126,7 +139,8 @@ - + + @@ -134,7 +148,8 @@ - + + @@ -142,13 +157,15 @@ - + + + @@ -157,13 +174,15 @@ - + + + diff --git a/jollyday-tests/src/test/resources/holidays/Holidays_test_fi_2010.xml b/jollyday-tests/src/test/resources/holidays/Holidays_test_fi_2010.xml index 368d6d927..6872ba5f4 100644 --- a/jollyday-tests/src/test/resources/holidays/Holidays_test_fi_2010.xml +++ b/jollyday-tests/src/test/resources/holidays/Holidays_test_fi_2010.xml @@ -18,7 +18,8 @@ - + + diff --git a/jollyday-tests/src/test/resources/holidays/Holidays_test_fr_2010.xml b/jollyday-tests/src/test/resources/holidays/Holidays_test_fr_2010.xml index 32e6fd2f0..7b0f447f8 100644 --- a/jollyday-tests/src/test/resources/holidays/Holidays_test_fr_2010.xml +++ b/jollyday-tests/src/test/resources/holidays/Holidays_test_fr_2010.xml @@ -16,45 +16,51 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + - + + - + + - + + - - - - - - - - - - - - - - - - - diff --git a/jollyday-tests/src/test/resources/holidays/Holidays_test_nz_2018.xml b/jollyday-tests/src/test/resources/holidays/Holidays_test_nz_2018.xml index fe7e29230..e3f7bdb85 100644 --- a/jollyday-tests/src/test/resources/holidays/Holidays_test_nz_2018.xml +++ b/jollyday-tests/src/test/resources/holidays/Holidays_test_nz_2018.xml @@ -25,66 +25,105 @@ + - + + - + - + + - + - + + - + - + + - + - + + - + - + + - + - + + - + + - + + - + + + + + + + + + - + + + + + + - + + + + + + + + + + + + + + + + + + +