Repository: focus-shift/jollyday (java)

Issue:
Easter monday in Switzerland's Canton of Valais instead of Vaud
### Affected country

Switzerland

### Affected public holiday

Easter monday

### Source of the information

https://en.wikipedia.org/wiki/Public_holidays_in_Switzerland

### More information

PR #680 has removed Easter Monday from `<SubConfigurations hierarchy="vd" description="Vaud">` and added it to `<SubConfigurations hierarchy="vs" description="Valais">`, which seems wrong to me: #679 cites https://en.wikipedia.org/wiki/Public_holidays_in_Switzerland, which lists `VS` as the only canton that does not observe Easter Monday, and I see the same on https://de.wikipedia.org/wiki/Feiertage_in_der_Schweiz.

https://www.valais4you.ch/de/wallis-in-kuerze/lebensart/feiertage contains the information:
> Tage vor oder nach den grossen christlichen Feiertagen wie Karfreitag, Ostermontag und Pfingstmontag sowie der 2. Weihnachtstag sind im Wallis offiziell keine Feiertage, werden aber je nach Arbeitgeber als arbeitsfreie Tage gewährt.

Pull request:
switzerland: move easter monday from valais to vaud
closes #698

<!--

Thanks for contributing.
Please review the following notes before submitting you pull request.

Please look for other issues or pull requests which already work on this topic. Is somebody already on it? Do you need to synchronize?

# Security Vulnerabilities

🛑 STOP! 🛑 If your contribution fixes a security vulnerability, please do not submit it.
Instead, please write an E-Mail to to one of the maintainer with all the information
to recreate the security vulnerability.

# Describing Your Changes

If, having reviewed the notes above, you're ready to submit your pull request, please
provide a brief description of the proposed changes.

If they:
 🐞 fix a bug, please describe the broken behaviour and how the changes fix it.
    Please label with 'type: bug' and 'status: new'
    
 🎁 make an enhancement, please describe the new functionality and why you believe it's useful.
    Please label with 'type: enhancement' and 'status: new'
 
If your pull request relates to any existing issues,
please reference them by using the issue number prefixed with #.

-->


Patch:
diff --git a/jollyday-core/src/main/resources/holidays/Holidays_ch.xml b/jollyday-core/src/main/resources/holidays/Holidays_ch.xml
index dbbc9ac7..08bbb7da 100644
--- a/jollyday-core/src/main/resources/holidays/Holidays_ch.xml
+++ b/jollyday-core/src/main/resources/holidays/Holidays_ch.xml
@@ -279,6 +279,7 @@
         <FixedWeekday which="THIRD" weekday="SUNDAY" month="SEPTEMBER"/>
       </RelativeToWeekdayInMonth>
       <ChristianHoliday type="GOOD_FRIDAY" descriptionPropertiesKey="christian.GOOD_FRIDAY"/>
+      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
       <ChristianHoliday type="WHIT_MONDAY" descriptionPropertiesKey="christian.WHIT_MONDAY"/>
     </Holidays>
   </SubConfigurations>
@@ -289,7 +290,6 @@
       <Fixed month="AUGUST" day="15" descriptionPropertiesKey="ASSUMPTION_DAY"/>
       <Fixed month="NOVEMBER" day="1" descriptionPropertiesKey="ALL_SAINTS"/>
       <Fixed month="DECEMBER" day="8" descriptionPropertiesKey="IMMACULATE_CONCEPTION"/>
-      <ChristianHoliday type="EASTER_MONDAY" descriptionPropertiesKey="christian.EASTER_MONDAY"/>
       <ChristianHoliday type="CORPUS_CHRISTI" descriptionPropertiesKey="christian.CORPUS_CHRISTI"/>
     </Holidays>
   </SubConfigurations>


Test patch:
diff --git a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayCHTest.java b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayCHTest.java
index ef6572f0..49bdb722 100644
--- a/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayCHTest.java
+++ b/jollyday-tests/src/test/java/de/focus_shift/jollyday/tests/country/HolidayCHTest.java
@@ -8,6 +8,7 @@ import static de.focus_shift.jollyday.tests.CalendarCheckerApi.assertFor;
 import static java.time.Month.AUGUST;
 import static java.time.Month.DECEMBER;
 import static java.time.Month.JANUARY;
+import static java.time.Month.MARCH;
 import static java.time.Month.NOVEMBER;
 
 
@@ -23,32 +24,28 @@ class HolidayCHTest {
       .hasChristianHoliday("EASTER").and()
 
       /* Aargau */
-      .hasFixedHoliday("ST_BERCHTHOLD", JANUARY, 2)
-        .inSubdivision("ag")
-      .and()
-      .hasFixedHoliday("ASSUMPTION_DAY", AUGUST, 15)
-        .inSubdivision("ag")
-      .and()
-      .hasFixedHoliday("ALL_SAINTS", NOVEMBER, 1)
-        .inSubdivision("ag")
-      .and()
-      .hasFixedHoliday("STEPHENS", DECEMBER, 26)
-        .inSubdivision("ag")
-      .and()
-      .hasFixedHoliday("IMMACULATE_CONCEPTION", DECEMBER, 8)
-        .inSubdivision("ag")
-      .and()
-      .hasChristianHoliday("GOOD_FRIDAY")
-        .inSubdivision("ag")
-      .and()
-      .hasChristianHoliday("EASTER_MONDAY")
-        .inSubdivision("ag")
-      .and()
-      .hasChristianHoliday("WHIT_MONDAY")
-        .inSubdivision("ag")
-      .and()
-      .hasChristianHoliday("CORPUS_CHRISTI")
-        .inSubdivision("ag")
+      .hasFixedHoliday("ST_BERCHTHOLD", JANUARY, 2).inSubdivision("ag").and()
+      .hasFixedHoliday("ASSUMPTION_DAY", AUGUST, 15).inSubdivision("ag").and()
+      .hasFixedHoliday("ALL_SAINTS", NOVEMBER, 1).inSubdivision("ag").and()
+      .hasFixedHoliday("STEPHENS", DECEMBER, 26).inSubdivision("ag").and()
+      .hasFixedHoliday("IMMACULATE_CONCEPTION", DECEMBER, 8).inSubdivision("ag").and()
+      .hasChristianHoliday("GOOD_FRIDAY").inSubdivision("ag").and()
+      .hasChristianHoliday("EASTER_MONDAY").inSubdivision("ag").and()
+      .hasChristianHoliday("WHIT_MONDAY").inSubdivision("ag").and()
+      .hasChristianHoliday("CORPUS_CHRISTI").inSubdivision("ag").and()
+
+      /* Vaud */
+      .hasFixedHoliday("ST_BERCHTHOLD", JANUARY, 2).inSubdivision("vd").and()
+      .hasChristianHoliday("GOOD_FRIDAY").inSubdivision("vd").and()
+      .hasChristianHoliday("EASTER_MONDAY").inSubdivision("vd").and()
+      .hasChristianHoliday("WHIT_MONDAY").inSubdivision("vd").and()
+
+      /* Valais */
+      .hasFixedHoliday("ST_JOSEPH", MARCH, 19).inSubdivision("vs").and()
+      .hasFixedHoliday("ASSUMPTION_DAY", AUGUST, 15).inSubdivision("vs").and()
+      .hasFixedHoliday("ALL_SAINTS", NOVEMBER, 1).inSubdivision("vs").and()
+      .hasFixedHoliday("IMMACULATE_CONCEPTION", DECEMBER, 8).inSubdivision("vs").and()
+      .hasChristianHoliday("CORPUS_CHRISTI").inSubdivision("vs")
 
       .check();
   }