Skip to content

Commit

Permalink
Update South Africa holidays: add holiday in honor of Winning the Rug…
Browse files Browse the repository at this point in the history
…by World Cup 2023 (Dec 15, 2023) (#1538)
  • Loading branch information
KJhellico committed Nov 2, 2023
1 parent 3e29bdc commit 2b12702
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 17 deletions.
42 changes: 25 additions & 17 deletions holidays/countries/south_africa.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@

class SouthAfrica(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays):
"""
http://www.gov.za/about-sa/public-holidays
https://www.gov.za/about-sa/public-holidays
https://en.wikipedia.org/wiki/Public_holidays_in_South_Africa
https://www.gov.za/speeches/president-cyril-ramaphosa-progress-economic-recovery-30-oct-2023-0000
"""

country = "ZA"
Expand Down Expand Up @@ -118,31 +119,38 @@ class ZAF(SouthAfrica):


class SouthAfricaStaticHolidays:
local_elections = "Local government elections"
municipal_elections = "Municipal elections"
national_and_provincial_elections = "National and provincial government elections"
presidential_decree_holiday = "Public holiday by presidential decree"
y2k_changeover = "Y2K changeover"
special_holidays = {
1999: (
(JUN, 2, "National and provincial government elections"),
(DEC, 31, "Y2K changeover"),
(JUN, 2, national_and_provincial_elections),
(DEC, 31, y2k_changeover),
),
2000: (JAN, 2, "Y2K changeover"),
2004: (APR, 14, "National and provincial government elections"),
2006: (MAR, 1, "Local government elections"),
2008: (MAY, 2, "Public holiday by presidential decree"),
2009: (APR, 22, "National and provincial government elections"),
2000: (JAN, 2, y2k_changeover),
2004: (APR, 14, national_and_provincial_elections),
2006: (MAR, 1, local_elections),
2008: (MAY, 2, presidential_decree_holiday),
2009: (APR, 22, national_and_provincial_elections),
2011: (
(MAY, 18, "Local government elections"),
(DEC, 27, "Public holiday by presidential decree"),
(MAY, 18, local_elections),
(DEC, 27, presidential_decree_holiday),
),
2014: (MAY, 7, "National and provincial government elections"),
2014: (MAY, 7, national_and_provincial_elections),
2016: (
(AUG, 3, "Local government elections"),
(DEC, 27, "Public holiday by presidential decree"),
(AUG, 3, local_elections),
(DEC, 27, presidential_decree_holiday),
),
2019: (MAY, 8, "National and provincial government elections"),
2021: (NOV, 1, "Municipal elections"),
2022: (DEC, 27, "Public holiday by presidential decree"),
2019: (MAY, 8, national_and_provincial_elections),
2021: (NOV, 1, municipal_elections),
2022: (DEC, 27, presidential_decree_holiday),
# Winning the 2023 Rugby World Cup
2023: (DEC, 15, presidential_decree_holiday),
}

special_holidays_observed = {
# Special holiday http://tiny.cc/za_y2k
2000: (JAN, 3, "Y2K changeover"),
2000: (JAN, 3, y2k_changeover),
}
1 change: 1 addition & 0 deletions snapshots/countries/ZA.json
Original file line number Diff line number Diff line change
Expand Up @@ -887,6 +887,7 @@
"2023-08-09": "National Women's Day",
"2023-09-24": "Heritage Day",
"2023-09-25": "Heritage Day (Observed)",
"2023-12-15": "Public holiday by presidential decree",
"2023-12-16": "Day of Reconciliation",
"2023-12-25": "Christmas Day",
"2023-12-26": "Day of Goodwill",
Expand Down
1 change: 1 addition & 0 deletions tests/countries/test_south_africa.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ def test_special_holidays(self):
"2019-05-08",
"2021-11-01",
"2022-12-27",
"2023-12-15",
# presidential
"2008-05-02",
"2011-12-27",
Expand Down

0 comments on commit 2b12702

Please sign in to comment.