From d26b9b5e93d7453f535ffedfd2844fd3fd72c1dc Mon Sep 17 00:00:00 2001 From: Pander Date: Sun, 29 Dec 2024 16:35:28 +0100 Subject: [PATCH] Dutch states --- data/countries/NL.yaml | 93 ++++++++++++++- test/fixtures/NL-2015.json | 1 - test/fixtures/NL-2016.json | 1 - test/fixtures/NL-2017.json | 1 - test/fixtures/NL-2018.json | 1 - test/fixtures/NL-2019.json | 1 - test/fixtures/NL-2020.json | 1 - test/fixtures/NL-2021.json | 1 - test/fixtures/NL-2022.json | 1 - test/fixtures/NL-2023.json | 1 - test/fixtures/NL-2024.json | 1 - test/fixtures/NL-2025.json | 1 - test/fixtures/NL-2026.json | 1 - test/fixtures/NL-2027.json | 1 - test/fixtures/NL-GR-2015.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2016.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2017.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2018.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2019.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2020.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2021.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2022.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2023.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2024.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2025.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2026.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-2027.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2015.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2016.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2017.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2018.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2019.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2020.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2021.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2022.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2023.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2024.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2025.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2026.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-GR-GRN-2027.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-2015.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2016.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2017.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2018.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2019.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2020.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2021.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2022.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2023.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2024.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2025.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2026.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-2027.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2015.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2016.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2017.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2018.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2019.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2020.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2021.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2022.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2023.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2024.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2025.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2026.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-NH-ALK-2027.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2015.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2016.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2017.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2018.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2019.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2020.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2021.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2022.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2023.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2024.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2025.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2026.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-2027.json | 173 ++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2015.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2016.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2017.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2018.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2019.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2020.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2021.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2022.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2023.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2024.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2025.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2026.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-BRL-2027.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2015.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2016.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2017.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2018.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2019.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2020.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2021.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2022.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2023.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2024.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2025.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2026.json | 182 ++++++++++++++++++++++++++++++ test/fixtures/NL-ZH-LDN-2027.json | 182 ++++++++++++++++++++++++++++++ 105 files changed, 16303 insertions(+), 14 deletions(-) create mode 100644 test/fixtures/NL-GR-2015.json create mode 100644 test/fixtures/NL-GR-2016.json create mode 100644 test/fixtures/NL-GR-2017.json create mode 100644 test/fixtures/NL-GR-2018.json create mode 100644 test/fixtures/NL-GR-2019.json create mode 100644 test/fixtures/NL-GR-2020.json create mode 100644 test/fixtures/NL-GR-2021.json create mode 100644 test/fixtures/NL-GR-2022.json create mode 100644 test/fixtures/NL-GR-2023.json create mode 100644 test/fixtures/NL-GR-2024.json create mode 100644 test/fixtures/NL-GR-2025.json create mode 100644 test/fixtures/NL-GR-2026.json create mode 100644 test/fixtures/NL-GR-2027.json create mode 100644 test/fixtures/NL-GR-GRN-2015.json create mode 100644 test/fixtures/NL-GR-GRN-2016.json create mode 100644 test/fixtures/NL-GR-GRN-2017.json create mode 100644 test/fixtures/NL-GR-GRN-2018.json create mode 100644 test/fixtures/NL-GR-GRN-2019.json create mode 100644 test/fixtures/NL-GR-GRN-2020.json create mode 100644 test/fixtures/NL-GR-GRN-2021.json create mode 100644 test/fixtures/NL-GR-GRN-2022.json create mode 100644 test/fixtures/NL-GR-GRN-2023.json create mode 100644 test/fixtures/NL-GR-GRN-2024.json create mode 100644 test/fixtures/NL-GR-GRN-2025.json create mode 100644 test/fixtures/NL-GR-GRN-2026.json create mode 100644 test/fixtures/NL-GR-GRN-2027.json create mode 100644 test/fixtures/NL-NH-2015.json create mode 100644 test/fixtures/NL-NH-2016.json create mode 100644 test/fixtures/NL-NH-2017.json create mode 100644 test/fixtures/NL-NH-2018.json create mode 100644 test/fixtures/NL-NH-2019.json create mode 100644 test/fixtures/NL-NH-2020.json create mode 100644 test/fixtures/NL-NH-2021.json create mode 100644 test/fixtures/NL-NH-2022.json create mode 100644 test/fixtures/NL-NH-2023.json create mode 100644 test/fixtures/NL-NH-2024.json create mode 100644 test/fixtures/NL-NH-2025.json create mode 100644 test/fixtures/NL-NH-2026.json create mode 100644 test/fixtures/NL-NH-2027.json create mode 100644 test/fixtures/NL-NH-ALK-2015.json create mode 100644 test/fixtures/NL-NH-ALK-2016.json create mode 100644 test/fixtures/NL-NH-ALK-2017.json create mode 100644 test/fixtures/NL-NH-ALK-2018.json create mode 100644 test/fixtures/NL-NH-ALK-2019.json create mode 100644 test/fixtures/NL-NH-ALK-2020.json create mode 100644 test/fixtures/NL-NH-ALK-2021.json create mode 100644 test/fixtures/NL-NH-ALK-2022.json create mode 100644 test/fixtures/NL-NH-ALK-2023.json create mode 100644 test/fixtures/NL-NH-ALK-2024.json create mode 100644 test/fixtures/NL-NH-ALK-2025.json create mode 100644 test/fixtures/NL-NH-ALK-2026.json create mode 100644 test/fixtures/NL-NH-ALK-2027.json create mode 100644 test/fixtures/NL-ZH-2015.json create mode 100644 test/fixtures/NL-ZH-2016.json create mode 100644 test/fixtures/NL-ZH-2017.json create mode 100644 test/fixtures/NL-ZH-2018.json create mode 100644 test/fixtures/NL-ZH-2019.json create mode 100644 test/fixtures/NL-ZH-2020.json create mode 100644 test/fixtures/NL-ZH-2021.json create mode 100644 test/fixtures/NL-ZH-2022.json create mode 100644 test/fixtures/NL-ZH-2023.json create mode 100644 test/fixtures/NL-ZH-2024.json create mode 100644 test/fixtures/NL-ZH-2025.json create mode 100644 test/fixtures/NL-ZH-2026.json create mode 100644 test/fixtures/NL-ZH-2027.json create mode 100644 test/fixtures/NL-ZH-BRL-2015.json create mode 100644 test/fixtures/NL-ZH-BRL-2016.json create mode 100644 test/fixtures/NL-ZH-BRL-2017.json create mode 100644 test/fixtures/NL-ZH-BRL-2018.json create mode 100644 test/fixtures/NL-ZH-BRL-2019.json create mode 100644 test/fixtures/NL-ZH-BRL-2020.json create mode 100644 test/fixtures/NL-ZH-BRL-2021.json create mode 100644 test/fixtures/NL-ZH-BRL-2022.json create mode 100644 test/fixtures/NL-ZH-BRL-2023.json create mode 100644 test/fixtures/NL-ZH-BRL-2024.json create mode 100644 test/fixtures/NL-ZH-BRL-2025.json create mode 100644 test/fixtures/NL-ZH-BRL-2026.json create mode 100644 test/fixtures/NL-ZH-BRL-2027.json create mode 100644 test/fixtures/NL-ZH-LDN-2015.json create mode 100644 test/fixtures/NL-ZH-LDN-2016.json create mode 100644 test/fixtures/NL-ZH-LDN-2017.json create mode 100644 test/fixtures/NL-ZH-LDN-2018.json create mode 100644 test/fixtures/NL-ZH-LDN-2019.json create mode 100644 test/fixtures/NL-ZH-LDN-2020.json create mode 100644 test/fixtures/NL-ZH-LDN-2021.json create mode 100644 test/fixtures/NL-ZH-LDN-2022.json create mode 100644 test/fixtures/NL-ZH-LDN-2023.json create mode 100644 test/fixtures/NL-ZH-LDN-2024.json create mode 100644 test/fixtures/NL-ZH-LDN-2025.json create mode 100644 test/fixtures/NL-ZH-LDN-2026.json create mode 100644 test/fixtures/NL-ZH-LDN-2027.json diff --git a/data/countries/NL.yaml b/data/countries/NL.yaml index 2163b0510..03dea8d4d 100644 --- a/data/countries/NL.yaml +++ b/data/countries/NL.yaml @@ -88,7 +88,6 @@ holidays: nl: Prinsjesdag en: Prince's Day de: Prinzentag - note: Scholen in Den Haag geven meestal 1 dag vrij type: observance 11-11: _name: 11-11 @@ -112,3 +111,95 @@ holidays: 12-31: _name: 12-31 type: bank + states: + GR: + name: + nl: Groningen + en: Groningen + de: Groningen + fr: Groningue + es: Groninga + it: Groninga + regions: + GRN: + name: + nl: Groningen + en: Groningen + de: Groningen + fr: Groningue + es: Groninga + it: Groninga + days: + # @attrib https://nl.wikipedia.org/wiki/Gronings_Ontzet + 08-28: + name: + nl: Gronings Ontzet + en: Relief of Groningen + de: Groninger Entsatz + fr: Levée de siège de Groningue + es: Alivio del asedio de Groninga + it: Assedio revocato di Groninga + type: observance + NH: + name: + nl: Noord-Holland + en: North Holland + de: Noord-Holland + fr: Hollande-Septentrionale + es: Holanda Septentrional + it: Olanda Settentrionale + regions: + ALK: + name: Alkmaar + days: + # @attrib https://nl.wikipedia.org/wiki/Alkmaars_Ontzet + 10-08: + name: + nl: Alkmaars Ontzet + en: Relief of Alkmaar + de: Alkmaarder Entsatz + fr: Levée de siège d’Alkmaar + es: Alivio del asedio de Alkmaar + it: Assedio revocato di Alkmaar + type: observance + ZH: + name: + nl: Zuid-Holland + en: South Holland + de: Zuid-Holland + fr: Hollande-Méridionale + es: Holanda Meridional + it: Olanda Meridionale + regions: + BRL: + name: Brielle + days: + # @attrib https://nl.wikipedia.org/wiki/Inname_van_Den_Briel + 04-01: + name: + nl: Inname van Den Briel + en: Capture of Brielle + de: Einname van Den Briel + fr: Prise de La Brielle + es: Toma de Brielle + it: Presa di Brielle + type: observance + LDN: + name: + nl: Leiden + en: Leiden + de: Leiden + fr: Leyde + es: Leiden + it: Leida + days: + # @attrib https://nl.wikipedia.org/wiki/Leids_Ontzet + 10-03: + name: + nl: Leids Ontzet + en: Relief of Leiden + de: Leidener Entsatz + fr: Levée de siège de Leyde + es: Alivio del asedio de Leiden + it: Assedio revocato di Leida + type: observance diff --git a/test/fixtures/NL-2015.json b/test/fixtures/NL-2015.json index e173e2cd1..5319937ca 100644 --- a/test/fixtures/NL-2015.json +++ b/test/fixtures/NL-2015.json @@ -113,7 +113,6 @@ "end": "2015-09-15T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2016.json b/test/fixtures/NL-2016.json index 285ed296b..b4546260c 100644 --- a/test/fixtures/NL-2016.json +++ b/test/fixtures/NL-2016.json @@ -113,7 +113,6 @@ "end": "2016-09-20T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2017.json b/test/fixtures/NL-2017.json index af8527eca..4b4f5b4d0 100644 --- a/test/fixtures/NL-2017.json +++ b/test/fixtures/NL-2017.json @@ -113,7 +113,6 @@ "end": "2017-09-19T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2018.json b/test/fixtures/NL-2018.json index 88242341e..aff013294 100644 --- a/test/fixtures/NL-2018.json +++ b/test/fixtures/NL-2018.json @@ -113,7 +113,6 @@ "end": "2018-09-18T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2019.json b/test/fixtures/NL-2019.json index 597d82776..93d784dfa 100644 --- a/test/fixtures/NL-2019.json +++ b/test/fixtures/NL-2019.json @@ -113,7 +113,6 @@ "end": "2019-09-17T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2020.json b/test/fixtures/NL-2020.json index 80a44945d..8e1320bdb 100644 --- a/test/fixtures/NL-2020.json +++ b/test/fixtures/NL-2020.json @@ -113,7 +113,6 @@ "end": "2020-09-15T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2021.json b/test/fixtures/NL-2021.json index ac4a84ade..3a2bbb79f 100644 --- a/test/fixtures/NL-2021.json +++ b/test/fixtures/NL-2021.json @@ -113,7 +113,6 @@ "end": "2021-09-21T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2022.json b/test/fixtures/NL-2022.json index 94eeb3e67..0c6b580d2 100644 --- a/test/fixtures/NL-2022.json +++ b/test/fixtures/NL-2022.json @@ -113,7 +113,6 @@ "end": "2022-09-20T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2023.json b/test/fixtures/NL-2023.json index 2b8d4c278..e15a56db6 100644 --- a/test/fixtures/NL-2023.json +++ b/test/fixtures/NL-2023.json @@ -113,7 +113,6 @@ "end": "2023-09-19T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2024.json b/test/fixtures/NL-2024.json index 1d2f77340..2fb290dad 100644 --- a/test/fixtures/NL-2024.json +++ b/test/fixtures/NL-2024.json @@ -113,7 +113,6 @@ "end": "2024-09-17T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2025.json b/test/fixtures/NL-2025.json index 187f57cd1..55f08a8cd 100644 --- a/test/fixtures/NL-2025.json +++ b/test/fixtures/NL-2025.json @@ -113,7 +113,6 @@ "end": "2025-09-16T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2026.json b/test/fixtures/NL-2026.json index 0a5cff453..5d63c9917 100644 --- a/test/fixtures/NL-2026.json +++ b/test/fixtures/NL-2026.json @@ -113,7 +113,6 @@ "end": "2026-09-15T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-2027.json b/test/fixtures/NL-2027.json index 13fad7522..9d485820f 100644 --- a/test/fixtures/NL-2027.json +++ b/test/fixtures/NL-2027.json @@ -113,7 +113,6 @@ "end": "2027-09-21T22:00:00.000Z", "name": "Prinsjesdag", "type": "observance", - "note": "Scholen in Den Haag geven meestal 1 dag vrij", "rule": "3rd tuesday in September", "_weekday": "Tue" }, diff --git a/test/fixtures/NL-GR-2015.json b/test/fixtures/NL-GR-2015.json new file mode 100644 index 000000000..5319937ca --- /dev/null +++ b/test/fixtures/NL-GR-2015.json @@ -0,0 +1,173 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2016.json b/test/fixtures/NL-GR-2016.json new file mode 100644 index 000000000..b4546260c --- /dev/null +++ b/test/fixtures/NL-GR-2016.json @@ -0,0 +1,173 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2017.json b/test/fixtures/NL-GR-2017.json new file mode 100644 index 000000000..4b4f5b4d0 --- /dev/null +++ b/test/fixtures/NL-GR-2017.json @@ -0,0 +1,173 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2018.json b/test/fixtures/NL-GR-2018.json new file mode 100644 index 000000000..aff013294 --- /dev/null +++ b/test/fixtures/NL-GR-2018.json @@ -0,0 +1,173 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2019.json b/test/fixtures/NL-GR-2019.json new file mode 100644 index 000000000..93d784dfa --- /dev/null +++ b/test/fixtures/NL-GR-2019.json @@ -0,0 +1,173 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2020.json b/test/fixtures/NL-GR-2020.json new file mode 100644 index 000000000..8e1320bdb --- /dev/null +++ b/test/fixtures/NL-GR-2020.json @@ -0,0 +1,173 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2021.json b/test/fixtures/NL-GR-2021.json new file mode 100644 index 000000000..3a2bbb79f --- /dev/null +++ b/test/fixtures/NL-GR-2021.json @@ -0,0 +1,173 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2022.json b/test/fixtures/NL-GR-2022.json new file mode 100644 index 000000000..0c6b580d2 --- /dev/null +++ b/test/fixtures/NL-GR-2022.json @@ -0,0 +1,173 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2023.json b/test/fixtures/NL-GR-2023.json new file mode 100644 index 000000000..e15a56db6 --- /dev/null +++ b/test/fixtures/NL-GR-2023.json @@ -0,0 +1,173 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2024.json b/test/fixtures/NL-GR-2024.json new file mode 100644 index 000000000..2fb290dad --- /dev/null +++ b/test/fixtures/NL-GR-2024.json @@ -0,0 +1,173 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2025.json b/test/fixtures/NL-GR-2025.json new file mode 100644 index 000000000..55f08a8cd --- /dev/null +++ b/test/fixtures/NL-GR-2025.json @@ -0,0 +1,173 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2026.json b/test/fixtures/NL-GR-2026.json new file mode 100644 index 000000000..5d63c9917 --- /dev/null +++ b/test/fixtures/NL-GR-2026.json @@ -0,0 +1,173 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-2027.json b/test/fixtures/NL-GR-2027.json new file mode 100644 index 000000000..9d485820f --- /dev/null +++ b/test/fixtures/NL-GR-2027.json @@ -0,0 +1,173 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2015.json b/test/fixtures/NL-GR-GRN-2015.json new file mode 100644 index 000000000..a84ae5f62 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2015.json @@ -0,0 +1,182 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-08-28 00:00:00", + "start": "2015-08-27T22:00:00.000Z", + "end": "2015-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Fri" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2016.json b/test/fixtures/NL-GR-GRN-2016.json new file mode 100644 index 000000000..e67ab61e8 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2016.json @@ -0,0 +1,182 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-08-28 00:00:00", + "start": "2016-08-27T22:00:00.000Z", + "end": "2016-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2017.json b/test/fixtures/NL-GR-GRN-2017.json new file mode 100644 index 000000000..f71db3add --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2017.json @@ -0,0 +1,182 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-08-28 00:00:00", + "start": "2017-08-27T22:00:00.000Z", + "end": "2017-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Mon" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2018.json b/test/fixtures/NL-GR-GRN-2018.json new file mode 100644 index 000000000..0ce813649 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2018.json @@ -0,0 +1,182 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-08-28 00:00:00", + "start": "2018-08-27T22:00:00.000Z", + "end": "2018-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Tue" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2019.json b/test/fixtures/NL-GR-GRN-2019.json new file mode 100644 index 000000000..090674598 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2019.json @@ -0,0 +1,182 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-08-28 00:00:00", + "start": "2019-08-27T22:00:00.000Z", + "end": "2019-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Wed" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2020.json b/test/fixtures/NL-GR-GRN-2020.json new file mode 100644 index 000000000..75afa6d7b --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2020.json @@ -0,0 +1,182 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-08-28 00:00:00", + "start": "2020-08-27T22:00:00.000Z", + "end": "2020-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Fri" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2021.json b/test/fixtures/NL-GR-GRN-2021.json new file mode 100644 index 000000000..db038b0f0 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2021.json @@ -0,0 +1,182 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-08-28 00:00:00", + "start": "2021-08-27T22:00:00.000Z", + "end": "2021-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Sat" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2022.json b/test/fixtures/NL-GR-GRN-2022.json new file mode 100644 index 000000000..0c9c12ace --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2022.json @@ -0,0 +1,182 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-08-28 00:00:00", + "start": "2022-08-27T22:00:00.000Z", + "end": "2022-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2023.json b/test/fixtures/NL-GR-GRN-2023.json new file mode 100644 index 000000000..7403fd3bc --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2023.json @@ -0,0 +1,182 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-08-28 00:00:00", + "start": "2023-08-27T22:00:00.000Z", + "end": "2023-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Mon" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2024.json b/test/fixtures/NL-GR-GRN-2024.json new file mode 100644 index 000000000..7dc250ceb --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2024.json @@ -0,0 +1,182 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-08-28 00:00:00", + "start": "2024-08-27T22:00:00.000Z", + "end": "2024-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Wed" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2025.json b/test/fixtures/NL-GR-GRN-2025.json new file mode 100644 index 000000000..1a788f93d --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2025.json @@ -0,0 +1,182 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-08-28 00:00:00", + "start": "2025-08-27T22:00:00.000Z", + "end": "2025-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Thu" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2026.json b/test/fixtures/NL-GR-GRN-2026.json new file mode 100644 index 000000000..951062d89 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2026.json @@ -0,0 +1,182 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-08-28 00:00:00", + "start": "2026-08-27T22:00:00.000Z", + "end": "2026-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Fri" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-GR-GRN-2027.json b/test/fixtures/NL-GR-GRN-2027.json new file mode 100644 index 000000000..a73383426 --- /dev/null +++ b/test/fixtures/NL-GR-GRN-2027.json @@ -0,0 +1,182 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-08-28 00:00:00", + "start": "2027-08-27T22:00:00.000Z", + "end": "2027-08-28T22:00:00.000Z", + "name": "Gronings Ontzet", + "type": "observance", + "rule": "08-28", + "_weekday": "Sat" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2015.json b/test/fixtures/NL-NH-2015.json new file mode 100644 index 000000000..5319937ca --- /dev/null +++ b/test/fixtures/NL-NH-2015.json @@ -0,0 +1,173 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2016.json b/test/fixtures/NL-NH-2016.json new file mode 100644 index 000000000..b4546260c --- /dev/null +++ b/test/fixtures/NL-NH-2016.json @@ -0,0 +1,173 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2017.json b/test/fixtures/NL-NH-2017.json new file mode 100644 index 000000000..4b4f5b4d0 --- /dev/null +++ b/test/fixtures/NL-NH-2017.json @@ -0,0 +1,173 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2018.json b/test/fixtures/NL-NH-2018.json new file mode 100644 index 000000000..aff013294 --- /dev/null +++ b/test/fixtures/NL-NH-2018.json @@ -0,0 +1,173 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2019.json b/test/fixtures/NL-NH-2019.json new file mode 100644 index 000000000..93d784dfa --- /dev/null +++ b/test/fixtures/NL-NH-2019.json @@ -0,0 +1,173 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2020.json b/test/fixtures/NL-NH-2020.json new file mode 100644 index 000000000..8e1320bdb --- /dev/null +++ b/test/fixtures/NL-NH-2020.json @@ -0,0 +1,173 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2021.json b/test/fixtures/NL-NH-2021.json new file mode 100644 index 000000000..3a2bbb79f --- /dev/null +++ b/test/fixtures/NL-NH-2021.json @@ -0,0 +1,173 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2022.json b/test/fixtures/NL-NH-2022.json new file mode 100644 index 000000000..0c6b580d2 --- /dev/null +++ b/test/fixtures/NL-NH-2022.json @@ -0,0 +1,173 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2023.json b/test/fixtures/NL-NH-2023.json new file mode 100644 index 000000000..e15a56db6 --- /dev/null +++ b/test/fixtures/NL-NH-2023.json @@ -0,0 +1,173 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2024.json b/test/fixtures/NL-NH-2024.json new file mode 100644 index 000000000..2fb290dad --- /dev/null +++ b/test/fixtures/NL-NH-2024.json @@ -0,0 +1,173 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2025.json b/test/fixtures/NL-NH-2025.json new file mode 100644 index 000000000..55f08a8cd --- /dev/null +++ b/test/fixtures/NL-NH-2025.json @@ -0,0 +1,173 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2026.json b/test/fixtures/NL-NH-2026.json new file mode 100644 index 000000000..5d63c9917 --- /dev/null +++ b/test/fixtures/NL-NH-2026.json @@ -0,0 +1,173 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-2027.json b/test/fixtures/NL-NH-2027.json new file mode 100644 index 000000000..9d485820f --- /dev/null +++ b/test/fixtures/NL-NH-2027.json @@ -0,0 +1,173 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2015.json b/test/fixtures/NL-NH-ALK-2015.json new file mode 100644 index 000000000..badbed40d --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2015.json @@ -0,0 +1,182 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-10-08 00:00:00", + "start": "2015-10-07T22:00:00.000Z", + "end": "2015-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Thu" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2016.json b/test/fixtures/NL-NH-ALK-2016.json new file mode 100644 index 000000000..2f4a71e0f --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2016.json @@ -0,0 +1,182 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-10-08 00:00:00", + "start": "2016-10-07T22:00:00.000Z", + "end": "2016-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Sat" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2017.json b/test/fixtures/NL-NH-ALK-2017.json new file mode 100644 index 000000000..95e4bb887 --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2017.json @@ -0,0 +1,182 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-10-08 00:00:00", + "start": "2017-10-07T22:00:00.000Z", + "end": "2017-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Sun" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2018.json b/test/fixtures/NL-NH-ALK-2018.json new file mode 100644 index 000000000..0bd42c616 --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2018.json @@ -0,0 +1,182 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-10-08 00:00:00", + "start": "2018-10-07T22:00:00.000Z", + "end": "2018-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Mon" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2019.json b/test/fixtures/NL-NH-ALK-2019.json new file mode 100644 index 000000000..e4bbd346e --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2019.json @@ -0,0 +1,182 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-10-08 00:00:00", + "start": "2019-10-07T22:00:00.000Z", + "end": "2019-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Tue" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2020.json b/test/fixtures/NL-NH-ALK-2020.json new file mode 100644 index 000000000..ad6f49c3e --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2020.json @@ -0,0 +1,182 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-10-08 00:00:00", + "start": "2020-10-07T22:00:00.000Z", + "end": "2020-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Thu" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2021.json b/test/fixtures/NL-NH-ALK-2021.json new file mode 100644 index 000000000..760ad7831 --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2021.json @@ -0,0 +1,182 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-10-08 00:00:00", + "start": "2021-10-07T22:00:00.000Z", + "end": "2021-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Fri" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2022.json b/test/fixtures/NL-NH-ALK-2022.json new file mode 100644 index 000000000..b7b342f39 --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2022.json @@ -0,0 +1,182 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-10-08 00:00:00", + "start": "2022-10-07T22:00:00.000Z", + "end": "2022-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Sat" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2023.json b/test/fixtures/NL-NH-ALK-2023.json new file mode 100644 index 000000000..41f5948a6 --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2023.json @@ -0,0 +1,182 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-10-08 00:00:00", + "start": "2023-10-07T22:00:00.000Z", + "end": "2023-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Sun" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2024.json b/test/fixtures/NL-NH-ALK-2024.json new file mode 100644 index 000000000..41afcee2e --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2024.json @@ -0,0 +1,182 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-10-08 00:00:00", + "start": "2024-10-07T22:00:00.000Z", + "end": "2024-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Tue" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2025.json b/test/fixtures/NL-NH-ALK-2025.json new file mode 100644 index 000000000..f837261d1 --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2025.json @@ -0,0 +1,182 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-10-08 00:00:00", + "start": "2025-10-07T22:00:00.000Z", + "end": "2025-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Wed" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2026.json b/test/fixtures/NL-NH-ALK-2026.json new file mode 100644 index 000000000..e2951928f --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2026.json @@ -0,0 +1,182 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-10-08 00:00:00", + "start": "2026-10-07T22:00:00.000Z", + "end": "2026-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Thu" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-NH-ALK-2027.json b/test/fixtures/NL-NH-ALK-2027.json new file mode 100644 index 000000000..32b57d4aa --- /dev/null +++ b/test/fixtures/NL-NH-ALK-2027.json @@ -0,0 +1,182 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-10-08 00:00:00", + "start": "2027-10-07T22:00:00.000Z", + "end": "2027-10-08T22:00:00.000Z", + "name": "Alkmaars Ontzet", + "type": "observance", + "rule": "10-08", + "_weekday": "Fri" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2015.json b/test/fixtures/NL-ZH-2015.json new file mode 100644 index 000000000..5319937ca --- /dev/null +++ b/test/fixtures/NL-ZH-2015.json @@ -0,0 +1,173 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2016.json b/test/fixtures/NL-ZH-2016.json new file mode 100644 index 000000000..b4546260c --- /dev/null +++ b/test/fixtures/NL-ZH-2016.json @@ -0,0 +1,173 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2017.json b/test/fixtures/NL-ZH-2017.json new file mode 100644 index 000000000..4b4f5b4d0 --- /dev/null +++ b/test/fixtures/NL-ZH-2017.json @@ -0,0 +1,173 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2018.json b/test/fixtures/NL-ZH-2018.json new file mode 100644 index 000000000..aff013294 --- /dev/null +++ b/test/fixtures/NL-ZH-2018.json @@ -0,0 +1,173 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2019.json b/test/fixtures/NL-ZH-2019.json new file mode 100644 index 000000000..93d784dfa --- /dev/null +++ b/test/fixtures/NL-ZH-2019.json @@ -0,0 +1,173 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2020.json b/test/fixtures/NL-ZH-2020.json new file mode 100644 index 000000000..8e1320bdb --- /dev/null +++ b/test/fixtures/NL-ZH-2020.json @@ -0,0 +1,173 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2021.json b/test/fixtures/NL-ZH-2021.json new file mode 100644 index 000000000..3a2bbb79f --- /dev/null +++ b/test/fixtures/NL-ZH-2021.json @@ -0,0 +1,173 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2022.json b/test/fixtures/NL-ZH-2022.json new file mode 100644 index 000000000..0c6b580d2 --- /dev/null +++ b/test/fixtures/NL-ZH-2022.json @@ -0,0 +1,173 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2023.json b/test/fixtures/NL-ZH-2023.json new file mode 100644 index 000000000..e15a56db6 --- /dev/null +++ b/test/fixtures/NL-ZH-2023.json @@ -0,0 +1,173 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2024.json b/test/fixtures/NL-ZH-2024.json new file mode 100644 index 000000000..2fb290dad --- /dev/null +++ b/test/fixtures/NL-ZH-2024.json @@ -0,0 +1,173 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2025.json b/test/fixtures/NL-ZH-2025.json new file mode 100644 index 000000000..55f08a8cd --- /dev/null +++ b/test/fixtures/NL-ZH-2025.json @@ -0,0 +1,173 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2026.json b/test/fixtures/NL-ZH-2026.json new file mode 100644 index 000000000..5d63c9917 --- /dev/null +++ b/test/fixtures/NL-ZH-2026.json @@ -0,0 +1,173 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-2027.json b/test/fixtures/NL-ZH-2027.json new file mode 100644 index 000000000..9d485820f --- /dev/null +++ b/test/fixtures/NL-ZH-2027.json @@ -0,0 +1,173 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2015.json b/test/fixtures/NL-ZH-BRL-2015.json new file mode 100644 index 000000000..189b38a1f --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2015.json @@ -0,0 +1,182 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-01 00:00:00", + "start": "2015-03-31T22:00:00.000Z", + "end": "2015-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Wed" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2016.json b/test/fixtures/NL-ZH-BRL-2016.json new file mode 100644 index 000000000..a89b290f4 --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2016.json @@ -0,0 +1,182 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-01 00:00:00", + "start": "2016-03-31T22:00:00.000Z", + "end": "2016-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Fri" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2017.json b/test/fixtures/NL-ZH-BRL-2017.json new file mode 100644 index 000000000..9a646b507 --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2017.json @@ -0,0 +1,182 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-01 00:00:00", + "start": "2017-03-31T22:00:00.000Z", + "end": "2017-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Sat" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2018.json b/test/fixtures/NL-ZH-BRL-2018.json new file mode 100644 index 000000000..b62449dc9 --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2018.json @@ -0,0 +1,182 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Sun" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2019.json b/test/fixtures/NL-ZH-BRL-2019.json new file mode 100644 index 000000000..3b5b0530c --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2019.json @@ -0,0 +1,182 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-01 00:00:00", + "start": "2019-03-31T22:00:00.000Z", + "end": "2019-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Mon" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2020.json b/test/fixtures/NL-ZH-BRL-2020.json new file mode 100644 index 000000000..4f33d15eb --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2020.json @@ -0,0 +1,182 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-01 00:00:00", + "start": "2020-03-31T22:00:00.000Z", + "end": "2020-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2021.json b/test/fixtures/NL-ZH-BRL-2021.json new file mode 100644 index 000000000..3a47916ed --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2021.json @@ -0,0 +1,182 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-01 00:00:00", + "start": "2021-03-31T22:00:00.000Z", + "end": "2021-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Thu" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2022.json b/test/fixtures/NL-ZH-BRL-2022.json new file mode 100644 index 000000000..808f05987 --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2022.json @@ -0,0 +1,182 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-01 00:00:00", + "start": "2022-03-31T22:00:00.000Z", + "end": "2022-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Fri" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2023.json b/test/fixtures/NL-ZH-BRL-2023.json new file mode 100644 index 000000000..50b39797e --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2023.json @@ -0,0 +1,182 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-01 00:00:00", + "start": "2023-03-31T22:00:00.000Z", + "end": "2023-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Sat" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2024.json b/test/fixtures/NL-ZH-BRL-2024.json new file mode 100644 index 000000000..2eb408afb --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2024.json @@ -0,0 +1,182 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Mon" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2025.json b/test/fixtures/NL-ZH-BRL-2025.json new file mode 100644 index 000000000..8c96162b5 --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2025.json @@ -0,0 +1,182 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-01 00:00:00", + "start": "2025-03-31T22:00:00.000Z", + "end": "2025-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Tue" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2026.json b/test/fixtures/NL-ZH-BRL-2026.json new file mode 100644 index 000000000..ac23376fe --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2026.json @@ -0,0 +1,182 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-01 00:00:00", + "start": "2026-03-31T22:00:00.000Z", + "end": "2026-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Wed" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-BRL-2027.json b/test/fixtures/NL-ZH-BRL-2027.json new file mode 100644 index 000000000..72b8eddf5 --- /dev/null +++ b/test/fixtures/NL-ZH-BRL-2027.json @@ -0,0 +1,182 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-01 00:00:00", + "start": "2027-03-31T22:00:00.000Z", + "end": "2027-04-01T22:00:00.000Z", + "name": "Inname van Den Briel", + "type": "observance", + "rule": "04-01", + "_weekday": "Thu" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2015.json b/test/fixtures/NL-ZH-LDN-2015.json new file mode 100644 index 000000000..74841d373 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2015.json @@ -0,0 +1,182 @@ +[ + { + "date": "2015-01-01 00:00:00", + "start": "2014-12-31T23:00:00.000Z", + "end": "2015-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2015-04-03 00:00:00", + "start": "2015-04-02T22:00:00.000Z", + "end": "2015-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2015-04-05 00:00:00", + "start": "2015-04-04T22:00:00.000Z", + "end": "2015-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2015-04-06 00:00:00", + "start": "2015-04-05T22:00:00.000Z", + "end": "2015-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2015-04-27 00:00:00", + "start": "2015-04-26T22:00:00.000Z", + "end": "2015-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2015-05-04 00:00:00", + "start": "2015-05-03T22:00:00.000Z", + "end": "2015-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2015-05-05 00:00:00", + "start": "2015-05-04T22:00:00.000Z", + "end": "2015-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2015-05-10 00:00:00", + "start": "2015-05-09T22:00:00.000Z", + "end": "2015-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2015-05-14 00:00:00", + "start": "2015-05-13T22:00:00.000Z", + "end": "2015-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2015-05-24 00:00:00", + "start": "2015-05-23T22:00:00.000Z", + "end": "2015-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2015-05-25 00:00:00", + "start": "2015-05-24T22:00:00.000Z", + "end": "2015-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2015-06-21 00:00:00", + "start": "2015-06-20T22:00:00.000Z", + "end": "2015-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2015-09-15 00:00:00", + "start": "2015-09-14T22:00:00.000Z", + "end": "2015-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2015-10-03 00:00:00", + "start": "2015-10-02T22:00:00.000Z", + "end": "2015-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Sat" + }, + { + "date": "2015-11-11 00:00:00", + "start": "2015-11-10T23:00:00.000Z", + "end": "2015-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2015-12-05 00:00:00", + "start": "2015-12-04T23:00:00.000Z", + "end": "2015-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2015-12-15 00:00:00", + "start": "2015-12-14T23:00:00.000Z", + "end": "2015-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2015-12-25 00:00:00", + "start": "2015-12-24T23:00:00.000Z", + "end": "2015-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2015-12-26 00:00:00", + "start": "2015-12-25T23:00:00.000Z", + "end": "2015-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2015-12-31 00:00:00", + "start": "2015-12-30T23:00:00.000Z", + "end": "2015-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2016.json b/test/fixtures/NL-ZH-LDN-2016.json new file mode 100644 index 000000000..d53fad3db --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2016.json @@ -0,0 +1,182 @@ +[ + { + "date": "2016-01-01 00:00:00", + "start": "2015-12-31T23:00:00.000Z", + "end": "2016-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2016-03-25 00:00:00", + "start": "2016-03-24T23:00:00.000Z", + "end": "2016-03-25T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2016-03-27 00:00:00", + "start": "2016-03-26T23:00:00.000Z", + "end": "2016-03-27T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2016-03-28 00:00:00", + "start": "2016-03-27T22:00:00.000Z", + "end": "2016-03-28T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2016-04-27 00:00:00", + "start": "2016-04-26T22:00:00.000Z", + "end": "2016-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2016-05-04 00:00:00", + "start": "2016-05-03T22:00:00.000Z", + "end": "2016-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2016-05-05 00:00:00", + "start": "2016-05-04T22:00:00.000Z", + "end": "2016-05-05T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2016-05-08 00:00:00", + "start": "2016-05-07T22:00:00.000Z", + "end": "2016-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2016-05-15 00:00:00", + "start": "2016-05-14T22:00:00.000Z", + "end": "2016-05-15T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2016-05-16 00:00:00", + "start": "2016-05-15T22:00:00.000Z", + "end": "2016-05-16T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2016-06-19 00:00:00", + "start": "2016-06-18T22:00:00.000Z", + "end": "2016-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2016-09-20 00:00:00", + "start": "2016-09-19T22:00:00.000Z", + "end": "2016-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2016-10-03 00:00:00", + "start": "2016-10-02T22:00:00.000Z", + "end": "2016-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Mon" + }, + { + "date": "2016-11-11 00:00:00", + "start": "2016-11-10T23:00:00.000Z", + "end": "2016-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2016-12-05 00:00:00", + "start": "2016-12-04T23:00:00.000Z", + "end": "2016-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2016-12-15 00:00:00", + "start": "2016-12-14T23:00:00.000Z", + "end": "2016-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2016-12-25 00:00:00", + "start": "2016-12-24T23:00:00.000Z", + "end": "2016-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2016-12-26 00:00:00", + "start": "2016-12-25T23:00:00.000Z", + "end": "2016-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2016-12-31 00:00:00", + "start": "2016-12-30T23:00:00.000Z", + "end": "2016-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2017.json b/test/fixtures/NL-ZH-LDN-2017.json new file mode 100644 index 000000000..01ac7abb1 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2017.json @@ -0,0 +1,182 @@ +[ + { + "date": "2017-01-01 00:00:00", + "start": "2016-12-31T23:00:00.000Z", + "end": "2017-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2017-04-14 00:00:00", + "start": "2017-04-13T22:00:00.000Z", + "end": "2017-04-14T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2017-04-16 00:00:00", + "start": "2017-04-15T22:00:00.000Z", + "end": "2017-04-16T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2017-04-17 00:00:00", + "start": "2017-04-16T22:00:00.000Z", + "end": "2017-04-17T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2017-04-27 00:00:00", + "start": "2017-04-26T22:00:00.000Z", + "end": "2017-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2017-05-04 00:00:00", + "start": "2017-05-03T22:00:00.000Z", + "end": "2017-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2017-05-05 00:00:00", + "start": "2017-05-04T22:00:00.000Z", + "end": "2017-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2017-05-14 00:00:00", + "start": "2017-05-13T22:00:00.000Z", + "end": "2017-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2017-05-25 00:00:00", + "start": "2017-05-24T22:00:00.000Z", + "end": "2017-05-25T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2017-06-04 00:00:00", + "start": "2017-06-03T22:00:00.000Z", + "end": "2017-06-04T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2017-06-05 00:00:00", + "start": "2017-06-04T22:00:00.000Z", + "end": "2017-06-05T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2017-06-18 00:00:00", + "start": "2017-06-17T22:00:00.000Z", + "end": "2017-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2017-09-19 00:00:00", + "start": "2017-09-18T22:00:00.000Z", + "end": "2017-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2017-10-03 00:00:00", + "start": "2017-10-02T22:00:00.000Z", + "end": "2017-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Tue" + }, + { + "date": "2017-11-11 00:00:00", + "start": "2017-11-10T23:00:00.000Z", + "end": "2017-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2017-12-05 00:00:00", + "start": "2017-12-04T23:00:00.000Z", + "end": "2017-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2017-12-15 00:00:00", + "start": "2017-12-14T23:00:00.000Z", + "end": "2017-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2017-12-25 00:00:00", + "start": "2017-12-24T23:00:00.000Z", + "end": "2017-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2017-12-26 00:00:00", + "start": "2017-12-25T23:00:00.000Z", + "end": "2017-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2017-12-31 00:00:00", + "start": "2017-12-30T23:00:00.000Z", + "end": "2017-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2018.json b/test/fixtures/NL-ZH-LDN-2018.json new file mode 100644 index 000000000..bf4339c76 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2018.json @@ -0,0 +1,182 @@ +[ + { + "date": "2018-01-01 00:00:00", + "start": "2017-12-31T23:00:00.000Z", + "end": "2018-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2018-03-30 00:00:00", + "start": "2018-03-29T22:00:00.000Z", + "end": "2018-03-30T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2018-04-01 00:00:00", + "start": "2018-03-31T22:00:00.000Z", + "end": "2018-04-01T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2018-04-02 00:00:00", + "start": "2018-04-01T22:00:00.000Z", + "end": "2018-04-02T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2018-04-27 00:00:00", + "start": "2018-04-26T22:00:00.000Z", + "end": "2018-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Fri" + }, + { + "date": "2018-05-04 00:00:00", + "start": "2018-05-03T22:00:00.000Z", + "end": "2018-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Fri" + }, + { + "date": "2018-05-05 00:00:00", + "start": "2018-05-04T22:00:00.000Z", + "end": "2018-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sat" + }, + { + "date": "2018-05-10 00:00:00", + "start": "2018-05-09T22:00:00.000Z", + "end": "2018-05-10T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2018-05-13 00:00:00", + "start": "2018-05-12T22:00:00.000Z", + "end": "2018-05-13T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2018-05-20 00:00:00", + "start": "2018-05-19T22:00:00.000Z", + "end": "2018-05-20T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2018-05-21 00:00:00", + "start": "2018-05-20T22:00:00.000Z", + "end": "2018-05-21T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2018-06-17 00:00:00", + "start": "2018-06-16T22:00:00.000Z", + "end": "2018-06-17T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2018-09-18 00:00:00", + "start": "2018-09-17T22:00:00.000Z", + "end": "2018-09-18T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2018-10-03 00:00:00", + "start": "2018-10-02T22:00:00.000Z", + "end": "2018-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Wed" + }, + { + "date": "2018-11-11 00:00:00", + "start": "2018-11-10T23:00:00.000Z", + "end": "2018-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sun" + }, + { + "date": "2018-12-05 00:00:00", + "start": "2018-12-04T23:00:00.000Z", + "end": "2018-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Wed" + }, + { + "date": "2018-12-15 00:00:00", + "start": "2018-12-14T23:00:00.000Z", + "end": "2018-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sat" + }, + { + "date": "2018-12-25 00:00:00", + "start": "2018-12-24T23:00:00.000Z", + "end": "2018-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Tue" + }, + { + "date": "2018-12-26 00:00:00", + "start": "2018-12-25T23:00:00.000Z", + "end": "2018-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Wed" + }, + { + "date": "2018-12-31 00:00:00", + "start": "2018-12-30T23:00:00.000Z", + "end": "2018-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Mon" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2019.json b/test/fixtures/NL-ZH-LDN-2019.json new file mode 100644 index 000000000..c9e3f5904 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2019.json @@ -0,0 +1,182 @@ +[ + { + "date": "2019-01-01 00:00:00", + "start": "2018-12-31T23:00:00.000Z", + "end": "2019-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Tue" + }, + { + "date": "2019-04-19 00:00:00", + "start": "2019-04-18T22:00:00.000Z", + "end": "2019-04-19T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2019-04-21 00:00:00", + "start": "2019-04-20T22:00:00.000Z", + "end": "2019-04-21T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2019-04-22 00:00:00", + "start": "2019-04-21T22:00:00.000Z", + "end": "2019-04-22T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2019-04-27 00:00:00", + "start": "2019-04-26T22:00:00.000Z", + "end": "2019-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2019-05-04 00:00:00", + "start": "2019-05-03T22:00:00.000Z", + "end": "2019-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2019-05-05 00:00:00", + "start": "2019-05-04T22:00:00.000Z", + "end": "2019-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2019-05-12 00:00:00", + "start": "2019-05-11T22:00:00.000Z", + "end": "2019-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2019-05-30 00:00:00", + "start": "2019-05-29T22:00:00.000Z", + "end": "2019-05-30T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2019-06-09 00:00:00", + "start": "2019-06-08T22:00:00.000Z", + "end": "2019-06-09T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2019-06-10 00:00:00", + "start": "2019-06-09T22:00:00.000Z", + "end": "2019-06-10T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2019-06-16 00:00:00", + "start": "2019-06-15T22:00:00.000Z", + "end": "2019-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2019-09-17 00:00:00", + "start": "2019-09-16T22:00:00.000Z", + "end": "2019-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2019-10-03 00:00:00", + "start": "2019-10-02T22:00:00.000Z", + "end": "2019-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Thu" + }, + { + "date": "2019-11-11 00:00:00", + "start": "2019-11-10T23:00:00.000Z", + "end": "2019-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2019-12-05 00:00:00", + "start": "2019-12-04T23:00:00.000Z", + "end": "2019-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2019-12-15 00:00:00", + "start": "2019-12-14T23:00:00.000Z", + "end": "2019-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2019-12-25 00:00:00", + "start": "2019-12-24T23:00:00.000Z", + "end": "2019-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2019-12-26 00:00:00", + "start": "2019-12-25T23:00:00.000Z", + "end": "2019-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2019-12-31 00:00:00", + "start": "2019-12-30T23:00:00.000Z", + "end": "2019-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2020.json b/test/fixtures/NL-ZH-LDN-2020.json new file mode 100644 index 000000000..22247d1e9 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2020.json @@ -0,0 +1,182 @@ +[ + { + "date": "2020-01-01 00:00:00", + "start": "2019-12-31T23:00:00.000Z", + "end": "2020-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2020-04-10 00:00:00", + "start": "2020-04-09T22:00:00.000Z", + "end": "2020-04-10T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2020-04-12 00:00:00", + "start": "2020-04-11T22:00:00.000Z", + "end": "2020-04-12T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2020-04-13 00:00:00", + "start": "2020-04-12T22:00:00.000Z", + "end": "2020-04-13T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2020-04-27 00:00:00", + "start": "2020-04-26T22:00:00.000Z", + "end": "2020-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2020-05-04 00:00:00", + "start": "2020-05-03T22:00:00.000Z", + "end": "2020-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2020-05-05 00:00:00", + "start": "2020-05-04T22:00:00.000Z", + "end": "2020-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2020-05-10 00:00:00", + "start": "2020-05-09T22:00:00.000Z", + "end": "2020-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2020-05-21 00:00:00", + "start": "2020-05-20T22:00:00.000Z", + "end": "2020-05-21T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2020-05-31 00:00:00", + "start": "2020-05-30T22:00:00.000Z", + "end": "2020-05-31T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2020-06-01 00:00:00", + "start": "2020-05-31T22:00:00.000Z", + "end": "2020-06-01T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2020-06-21 00:00:00", + "start": "2020-06-20T22:00:00.000Z", + "end": "2020-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2020-09-15 00:00:00", + "start": "2020-09-14T22:00:00.000Z", + "end": "2020-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2020-10-03 00:00:00", + "start": "2020-10-02T22:00:00.000Z", + "end": "2020-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Sat" + }, + { + "date": "2020-11-11 00:00:00", + "start": "2020-11-10T23:00:00.000Z", + "end": "2020-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2020-12-05 00:00:00", + "start": "2020-12-04T23:00:00.000Z", + "end": "2020-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2020-12-15 00:00:00", + "start": "2020-12-14T23:00:00.000Z", + "end": "2020-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2020-12-25 00:00:00", + "start": "2020-12-24T23:00:00.000Z", + "end": "2020-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2020-12-26 00:00:00", + "start": "2020-12-25T23:00:00.000Z", + "end": "2020-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2020-12-31 00:00:00", + "start": "2020-12-30T23:00:00.000Z", + "end": "2020-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2021.json b/test/fixtures/NL-ZH-LDN-2021.json new file mode 100644 index 000000000..e1edd8255 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2021.json @@ -0,0 +1,182 @@ +[ + { + "date": "2021-01-01 00:00:00", + "start": "2020-12-31T23:00:00.000Z", + "end": "2021-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2021-04-02 00:00:00", + "start": "2021-04-01T22:00:00.000Z", + "end": "2021-04-02T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2021-04-04 00:00:00", + "start": "2021-04-03T22:00:00.000Z", + "end": "2021-04-04T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2021-04-05 00:00:00", + "start": "2021-04-04T22:00:00.000Z", + "end": "2021-04-05T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2021-04-27 00:00:00", + "start": "2021-04-26T22:00:00.000Z", + "end": "2021-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2021-05-04 00:00:00", + "start": "2021-05-03T22:00:00.000Z", + "end": "2021-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2021-05-05 00:00:00", + "start": "2021-05-04T22:00:00.000Z", + "end": "2021-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2021-05-09 00:00:00", + "start": "2021-05-08T22:00:00.000Z", + "end": "2021-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2021-05-13 00:00:00", + "start": "2021-05-12T22:00:00.000Z", + "end": "2021-05-13T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2021-05-23 00:00:00", + "start": "2021-05-22T22:00:00.000Z", + "end": "2021-05-23T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2021-05-24 00:00:00", + "start": "2021-05-23T22:00:00.000Z", + "end": "2021-05-24T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2021-06-20 00:00:00", + "start": "2021-06-19T22:00:00.000Z", + "end": "2021-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2021-09-21 00:00:00", + "start": "2021-09-20T22:00:00.000Z", + "end": "2021-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2021-10-03 00:00:00", + "start": "2021-10-02T22:00:00.000Z", + "end": "2021-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Sun" + }, + { + "date": "2021-11-11 00:00:00", + "start": "2021-11-10T23:00:00.000Z", + "end": "2021-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2021-12-05 00:00:00", + "start": "2021-12-04T23:00:00.000Z", + "end": "2021-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2021-12-15 00:00:00", + "start": "2021-12-14T23:00:00.000Z", + "end": "2021-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2021-12-25 00:00:00", + "start": "2021-12-24T23:00:00.000Z", + "end": "2021-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2021-12-26 00:00:00", + "start": "2021-12-25T23:00:00.000Z", + "end": "2021-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2021-12-31 00:00:00", + "start": "2021-12-30T23:00:00.000Z", + "end": "2021-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2022.json b/test/fixtures/NL-ZH-LDN-2022.json new file mode 100644 index 000000000..fdfd3d28f --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2022.json @@ -0,0 +1,182 @@ +[ + { + "date": "2022-01-01 00:00:00", + "start": "2021-12-31T23:00:00.000Z", + "end": "2022-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sat" + }, + { + "date": "2022-04-15 00:00:00", + "start": "2022-04-14T22:00:00.000Z", + "end": "2022-04-15T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2022-04-17 00:00:00", + "start": "2022-04-16T22:00:00.000Z", + "end": "2022-04-17T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2022-04-18 00:00:00", + "start": "2022-04-17T22:00:00.000Z", + "end": "2022-04-18T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2022-04-27 00:00:00", + "start": "2022-04-26T22:00:00.000Z", + "end": "2022-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Wed" + }, + { + "date": "2022-05-04 00:00:00", + "start": "2022-05-03T22:00:00.000Z", + "end": "2022-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Wed" + }, + { + "date": "2022-05-05 00:00:00", + "start": "2022-05-04T22:00:00.000Z", + "end": "2022-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Thu" + }, + { + "date": "2022-05-08 00:00:00", + "start": "2022-05-07T22:00:00.000Z", + "end": "2022-05-08T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2022-05-26 00:00:00", + "start": "2022-05-25T22:00:00.000Z", + "end": "2022-05-26T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2022-06-05 00:00:00", + "start": "2022-06-04T22:00:00.000Z", + "end": "2022-06-05T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2022-06-06 00:00:00", + "start": "2022-06-05T22:00:00.000Z", + "end": "2022-06-06T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2022-06-19 00:00:00", + "start": "2022-06-18T22:00:00.000Z", + "end": "2022-06-19T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2022-09-20 00:00:00", + "start": "2022-09-19T22:00:00.000Z", + "end": "2022-09-20T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2022-10-03 00:00:00", + "start": "2022-10-02T22:00:00.000Z", + "end": "2022-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Mon" + }, + { + "date": "2022-11-11 00:00:00", + "start": "2022-11-10T23:00:00.000Z", + "end": "2022-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Fri" + }, + { + "date": "2022-12-05 00:00:00", + "start": "2022-12-04T23:00:00.000Z", + "end": "2022-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Mon" + }, + { + "date": "2022-12-15 00:00:00", + "start": "2022-12-14T23:00:00.000Z", + "end": "2022-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Thu" + }, + { + "date": "2022-12-25 00:00:00", + "start": "2022-12-24T23:00:00.000Z", + "end": "2022-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sun" + }, + { + "date": "2022-12-26 00:00:00", + "start": "2022-12-25T23:00:00.000Z", + "end": "2022-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Mon" + }, + { + "date": "2022-12-31 00:00:00", + "start": "2022-12-30T23:00:00.000Z", + "end": "2022-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sat" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2023.json b/test/fixtures/NL-ZH-LDN-2023.json new file mode 100644 index 000000000..89ee8ded1 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2023.json @@ -0,0 +1,182 @@ +[ + { + "date": "2023-01-01 00:00:00", + "start": "2022-12-31T23:00:00.000Z", + "end": "2023-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Sun" + }, + { + "date": "2023-04-07 00:00:00", + "start": "2023-04-06T22:00:00.000Z", + "end": "2023-04-07T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2023-04-09 00:00:00", + "start": "2023-04-08T22:00:00.000Z", + "end": "2023-04-09T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2023-04-10 00:00:00", + "start": "2023-04-09T22:00:00.000Z", + "end": "2023-04-10T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2023-04-27 00:00:00", + "start": "2023-04-26T22:00:00.000Z", + "end": "2023-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Thu" + }, + { + "date": "2023-05-04 00:00:00", + "start": "2023-05-03T22:00:00.000Z", + "end": "2023-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Thu" + }, + { + "date": "2023-05-05 00:00:00", + "start": "2023-05-04T22:00:00.000Z", + "end": "2023-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Fri" + }, + { + "date": "2023-05-14 00:00:00", + "start": "2023-05-13T22:00:00.000Z", + "end": "2023-05-14T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2023-05-18 00:00:00", + "start": "2023-05-17T22:00:00.000Z", + "end": "2023-05-18T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2023-05-28 00:00:00", + "start": "2023-05-27T22:00:00.000Z", + "end": "2023-05-28T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2023-05-29 00:00:00", + "start": "2023-05-28T22:00:00.000Z", + "end": "2023-05-29T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2023-06-18 00:00:00", + "start": "2023-06-17T22:00:00.000Z", + "end": "2023-06-18T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2023-09-19 00:00:00", + "start": "2023-09-18T22:00:00.000Z", + "end": "2023-09-19T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2023-10-03 00:00:00", + "start": "2023-10-02T22:00:00.000Z", + "end": "2023-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Tue" + }, + { + "date": "2023-11-11 00:00:00", + "start": "2023-11-10T23:00:00.000Z", + "end": "2023-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Sat" + }, + { + "date": "2023-12-05 00:00:00", + "start": "2023-12-04T23:00:00.000Z", + "end": "2023-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Tue" + }, + { + "date": "2023-12-15 00:00:00", + "start": "2023-12-14T23:00:00.000Z", + "end": "2023-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Fri" + }, + { + "date": "2023-12-25 00:00:00", + "start": "2023-12-24T23:00:00.000Z", + "end": "2023-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Mon" + }, + { + "date": "2023-12-26 00:00:00", + "start": "2023-12-25T23:00:00.000Z", + "end": "2023-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Tue" + }, + { + "date": "2023-12-31 00:00:00", + "start": "2023-12-30T23:00:00.000Z", + "end": "2023-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Sun" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2024.json b/test/fixtures/NL-ZH-LDN-2024.json new file mode 100644 index 000000000..7333efc3c --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2024.json @@ -0,0 +1,182 @@ +[ + { + "date": "2024-01-01 00:00:00", + "start": "2023-12-31T23:00:00.000Z", + "end": "2024-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Mon" + }, + { + "date": "2024-03-29 00:00:00", + "start": "2024-03-28T23:00:00.000Z", + "end": "2024-03-29T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2024-03-31 00:00:00", + "start": "2024-03-30T23:00:00.000Z", + "end": "2024-03-31T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2024-04-01 00:00:00", + "start": "2024-03-31T22:00:00.000Z", + "end": "2024-04-01T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2024-04-27 00:00:00", + "start": "2024-04-26T22:00:00.000Z", + "end": "2024-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2024-05-04 00:00:00", + "start": "2024-05-03T22:00:00.000Z", + "end": "2024-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sat" + }, + { + "date": "2024-05-05 00:00:00", + "start": "2024-05-04T22:00:00.000Z", + "end": "2024-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Sun" + }, + { + "date": "2024-05-09 00:00:00", + "start": "2024-05-08T22:00:00.000Z", + "end": "2024-05-09T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2024-05-12 00:00:00", + "start": "2024-05-11T22:00:00.000Z", + "end": "2024-05-12T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2024-05-19 00:00:00", + "start": "2024-05-18T22:00:00.000Z", + "end": "2024-05-19T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2024-05-20 00:00:00", + "start": "2024-05-19T22:00:00.000Z", + "end": "2024-05-20T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2024-06-16 00:00:00", + "start": "2024-06-15T22:00:00.000Z", + "end": "2024-06-16T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2024-09-17 00:00:00", + "start": "2024-09-16T22:00:00.000Z", + "end": "2024-09-17T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2024-10-03 00:00:00", + "start": "2024-10-02T22:00:00.000Z", + "end": "2024-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Thu" + }, + { + "date": "2024-11-11 00:00:00", + "start": "2024-11-10T23:00:00.000Z", + "end": "2024-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Mon" + }, + { + "date": "2024-12-05 00:00:00", + "start": "2024-12-04T23:00:00.000Z", + "end": "2024-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Thu" + }, + { + "date": "2024-12-15 00:00:00", + "start": "2024-12-14T23:00:00.000Z", + "end": "2024-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Sun" + }, + { + "date": "2024-12-25 00:00:00", + "start": "2024-12-24T23:00:00.000Z", + "end": "2024-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Wed" + }, + { + "date": "2024-12-26 00:00:00", + "start": "2024-12-25T23:00:00.000Z", + "end": "2024-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Thu" + }, + { + "date": "2024-12-31 00:00:00", + "start": "2024-12-30T23:00:00.000Z", + "end": "2024-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Tue" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2025.json b/test/fixtures/NL-ZH-LDN-2025.json new file mode 100644 index 000000000..7c895ddf8 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2025.json @@ -0,0 +1,182 @@ +[ + { + "date": "2025-01-01 00:00:00", + "start": "2024-12-31T23:00:00.000Z", + "end": "2025-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Wed" + }, + { + "date": "2025-04-18 00:00:00", + "start": "2025-04-17T22:00:00.000Z", + "end": "2025-04-18T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2025-04-20 00:00:00", + "start": "2025-04-19T22:00:00.000Z", + "end": "2025-04-20T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2025-04-21 00:00:00", + "start": "2025-04-20T22:00:00.000Z", + "end": "2025-04-21T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2025-04-26 00:00:00", + "start": "2025-04-25T22:00:00.000Z", + "end": "2025-04-26T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Sat" + }, + { + "date": "2025-05-04 00:00:00", + "start": "2025-05-03T22:00:00.000Z", + "end": "2025-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Sun" + }, + { + "date": "2025-05-05 00:00:00", + "start": "2025-05-04T22:00:00.000Z", + "end": "2025-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Mon" + }, + { + "date": "2025-05-11 00:00:00", + "start": "2025-05-10T22:00:00.000Z", + "end": "2025-05-11T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2025-05-29 00:00:00", + "start": "2025-05-28T22:00:00.000Z", + "end": "2025-05-29T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2025-06-08 00:00:00", + "start": "2025-06-07T22:00:00.000Z", + "end": "2025-06-08T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2025-06-09 00:00:00", + "start": "2025-06-08T22:00:00.000Z", + "end": "2025-06-09T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2025-06-15 00:00:00", + "start": "2025-06-14T22:00:00.000Z", + "end": "2025-06-15T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2025-09-16 00:00:00", + "start": "2025-09-15T22:00:00.000Z", + "end": "2025-09-16T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2025-10-03 00:00:00", + "start": "2025-10-02T22:00:00.000Z", + "end": "2025-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Fri" + }, + { + "date": "2025-11-11 00:00:00", + "start": "2025-11-10T23:00:00.000Z", + "end": "2025-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Tue" + }, + { + "date": "2025-12-05 00:00:00", + "start": "2025-12-04T23:00:00.000Z", + "end": "2025-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Fri" + }, + { + "date": "2025-12-15 00:00:00", + "start": "2025-12-14T23:00:00.000Z", + "end": "2025-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Mon" + }, + { + "date": "2025-12-25 00:00:00", + "start": "2025-12-24T23:00:00.000Z", + "end": "2025-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Thu" + }, + { + "date": "2025-12-26 00:00:00", + "start": "2025-12-25T23:00:00.000Z", + "end": "2025-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Fri" + }, + { + "date": "2025-12-31 00:00:00", + "start": "2025-12-30T23:00:00.000Z", + "end": "2025-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Wed" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2026.json b/test/fixtures/NL-ZH-LDN-2026.json new file mode 100644 index 000000000..528e3e220 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2026.json @@ -0,0 +1,182 @@ +[ + { + "date": "2026-01-01 00:00:00", + "start": "2025-12-31T23:00:00.000Z", + "end": "2026-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Thu" + }, + { + "date": "2026-04-03 00:00:00", + "start": "2026-04-02T22:00:00.000Z", + "end": "2026-04-03T22:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2026-04-05 00:00:00", + "start": "2026-04-04T22:00:00.000Z", + "end": "2026-04-05T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2026-04-06 00:00:00", + "start": "2026-04-05T22:00:00.000Z", + "end": "2026-04-06T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2026-04-27 00:00:00", + "start": "2026-04-26T22:00:00.000Z", + "end": "2026-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Mon" + }, + { + "date": "2026-05-04 00:00:00", + "start": "2026-05-03T22:00:00.000Z", + "end": "2026-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Mon" + }, + { + "date": "2026-05-05 00:00:00", + "start": "2026-05-04T22:00:00.000Z", + "end": "2026-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Tue" + }, + { + "date": "2026-05-10 00:00:00", + "start": "2026-05-09T22:00:00.000Z", + "end": "2026-05-10T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2026-05-14 00:00:00", + "start": "2026-05-13T22:00:00.000Z", + "end": "2026-05-14T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2026-05-24 00:00:00", + "start": "2026-05-23T22:00:00.000Z", + "end": "2026-05-24T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2026-05-25 00:00:00", + "start": "2026-05-24T22:00:00.000Z", + "end": "2026-05-25T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2026-06-21 00:00:00", + "start": "2026-06-20T22:00:00.000Z", + "end": "2026-06-21T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2026-09-15 00:00:00", + "start": "2026-09-14T22:00:00.000Z", + "end": "2026-09-15T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2026-10-03 00:00:00", + "start": "2026-10-02T22:00:00.000Z", + "end": "2026-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Sat" + }, + { + "date": "2026-11-11 00:00:00", + "start": "2026-11-10T23:00:00.000Z", + "end": "2026-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Wed" + }, + { + "date": "2026-12-05 00:00:00", + "start": "2026-12-04T23:00:00.000Z", + "end": "2026-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sat" + }, + { + "date": "2026-12-15 00:00:00", + "start": "2026-12-14T23:00:00.000Z", + "end": "2026-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Tue" + }, + { + "date": "2026-12-25 00:00:00", + "start": "2026-12-24T23:00:00.000Z", + "end": "2026-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Fri" + }, + { + "date": "2026-12-26 00:00:00", + "start": "2026-12-25T23:00:00.000Z", + "end": "2026-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sat" + }, + { + "date": "2026-12-31 00:00:00", + "start": "2026-12-30T23:00:00.000Z", + "end": "2026-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Thu" + } +] \ No newline at end of file diff --git a/test/fixtures/NL-ZH-LDN-2027.json b/test/fixtures/NL-ZH-LDN-2027.json new file mode 100644 index 000000000..821cf4c01 --- /dev/null +++ b/test/fixtures/NL-ZH-LDN-2027.json @@ -0,0 +1,182 @@ +[ + { + "date": "2027-01-01 00:00:00", + "start": "2026-12-31T23:00:00.000Z", + "end": "2027-01-01T23:00:00.000Z", + "name": "Nieuwjaar", + "type": "public", + "rule": "01-01", + "_weekday": "Fri" + }, + { + "date": "2027-03-26 00:00:00", + "start": "2027-03-25T23:00:00.000Z", + "end": "2027-03-26T23:00:00.000Z", + "name": "Goede Vrijdag", + "type": "school", + "rule": "easter -2", + "_weekday": "Fri" + }, + { + "date": "2027-03-28 00:00:00", + "start": "2027-03-27T23:00:00.000Z", + "end": "2027-03-28T22:00:00.000Z", + "name": "Pasen", + "type": "public", + "rule": "easter", + "_weekday": "Sun" + }, + { + "date": "2027-03-29 00:00:00", + "start": "2027-03-28T22:00:00.000Z", + "end": "2027-03-29T22:00:00.000Z", + "name": "Tweede paasdag", + "type": "public", + "rule": "easter 1", + "_weekday": "Mon" + }, + { + "date": "2027-04-27 00:00:00", + "start": "2027-04-26T22:00:00.000Z", + "end": "2027-04-27T22:00:00.000Z", + "name": "Koningsdag", + "type": "public", + "rule": "04-27 if sunday then previous saturday since 2014", + "_weekday": "Tue" + }, + { + "date": "2027-05-04 00:00:00", + "start": "2027-05-03T22:00:00.000Z", + "end": "2027-05-04T22:00:00.000Z", + "name": "Nationale Dodenherdenking", + "type": "observance", + "rule": "05-04", + "_weekday": "Tue" + }, + { + "date": "2027-05-05 00:00:00", + "start": "2027-05-04T22:00:00.000Z", + "end": "2027-05-05T22:00:00.000Z", + "name": "Bevrijdingsdag", + "type": "school", + "rule": "05-05", + "_weekday": "Wed" + }, + { + "date": "2027-05-06 00:00:00", + "start": "2027-05-05T22:00:00.000Z", + "end": "2027-05-06T22:00:00.000Z", + "name": "Hemelvaartsdag", + "type": "public", + "rule": "easter 39", + "_weekday": "Thu" + }, + { + "date": "2027-05-09 00:00:00", + "start": "2027-05-08T22:00:00.000Z", + "end": "2027-05-09T22:00:00.000Z", + "name": "Moederdag", + "type": "observance", + "rule": "2nd sunday in May", + "_weekday": "Sun" + }, + { + "date": "2027-05-16 00:00:00", + "start": "2027-05-15T22:00:00.000Z", + "end": "2027-05-16T22:00:00.000Z", + "name": "Pinksteren", + "type": "public", + "rule": "easter 49", + "_weekday": "Sun" + }, + { + "date": "2027-05-17 00:00:00", + "start": "2027-05-16T22:00:00.000Z", + "end": "2027-05-17T22:00:00.000Z", + "name": "Tweede pinksterdag", + "type": "public", + "rule": "easter 50", + "_weekday": "Mon" + }, + { + "date": "2027-06-20 00:00:00", + "start": "2027-06-19T22:00:00.000Z", + "end": "2027-06-20T22:00:00.000Z", + "name": "Vaderdag", + "type": "observance", + "rule": "3rd sunday in June", + "_weekday": "Sun" + }, + { + "date": "2027-09-21 00:00:00", + "start": "2027-09-20T22:00:00.000Z", + "end": "2027-09-21T22:00:00.000Z", + "name": "Prinsjesdag", + "type": "observance", + "rule": "3rd tuesday in September", + "_weekday": "Tue" + }, + { + "date": "2027-10-03 00:00:00", + "start": "2027-10-02T22:00:00.000Z", + "end": "2027-10-03T22:00:00.000Z", + "name": "Leids Ontzet", + "type": "observance", + "rule": "10-03", + "_weekday": "Sun" + }, + { + "date": "2027-11-11 00:00:00", + "start": "2027-11-10T23:00:00.000Z", + "end": "2027-11-11T23:00:00.000Z", + "name": "Sint-Maarten", + "type": "observance", + "rule": "11-11", + "_weekday": "Thu" + }, + { + "date": "2027-12-05 00:00:00", + "start": "2027-12-04T23:00:00.000Z", + "end": "2027-12-05T23:00:00.000Z", + "name": "Sinterklaasavond", + "type": "observance", + "rule": "12-05", + "_weekday": "Sun" + }, + { + "date": "2027-12-15 00:00:00", + "start": "2027-12-14T23:00:00.000Z", + "end": "2027-12-15T23:00:00.000Z", + "name": "Koninkrijksdag", + "type": "observance", + "rule": "12-15", + "_weekday": "Wed" + }, + { + "date": "2027-12-25 00:00:00", + "start": "2027-12-24T23:00:00.000Z", + "end": "2027-12-25T23:00:00.000Z", + "name": "Kerstmis", + "type": "public", + "rule": "12-25", + "_weekday": "Sat" + }, + { + "date": "2027-12-26 00:00:00", + "start": "2027-12-25T23:00:00.000Z", + "end": "2027-12-26T23:00:00.000Z", + "name": "Tweede kerstdag", + "type": "public", + "rule": "12-26", + "_weekday": "Sun" + }, + { + "date": "2027-12-31 00:00:00", + "start": "2027-12-30T23:00:00.000Z", + "end": "2027-12-31T23:00:00.000Z", + "name": "Oudejaarsavond", + "type": "bank", + "rule": "12-31", + "_weekday": "Fri" + } +] \ No newline at end of file