# Path: holidays/utils.py
# def _islamic_to_gre(Gyear: int, Hmonth: int, Hday: int) -> List[date]:
#     """
#     Find the Gregorian dates of all instances of Islamic (Lunar Hijrī) calendar
#     month and day falling within the Gregorian year. There could be up to two
#     such instances in a single Gregorian year since the Islamic (Lunar Hijrī)
#     calendar is about 11 days shorter.
# 
#     Relies on package `hijri_converter
#     <https://www.pypy.org/package/hijri_converter>`__.
# 
#     :param Gyear:
#         The Gregorian year.
# 
#     :param Hmonth:
#         The Lunar Hijrī (Islamic) month.
# 
#     :param Hday:
#         The Lunar Hijrī (Islamic) day.
# 
#     :return:
#         List of Gregorian dates within the Gregorian year specified that
#         matches the Islamic (Lunar Hijrī) calendar day and month specified.
#     """
#     Hyear = convert.Gregorian(Gyear, 1, 1).to_hijri().datetuple()[0]
#     gres = [
#         convert.Hijri(y, Hmonth, Hday).to_gregorian()
#         for y in range(Hyear - 1, Hyear + 2)
#     ]
#     gre_dates = [date(*gre.datetuple()) for gre in gres if gre.year == Gyear]
#     return gre_dates


import unittest
import holidays
from itertools import product
from datetime import date
from dateutil.easter import easter
from dateutil.relativedelta import relativedelta as rd, TH, FR, MO
from holidays.utils import _islamic_to_gre
from copy import deepcopy
# -*- coding: utf-8 -*-

#  python-holidays
#  ---------------
#  A fast, efficient Python library for generating country, province and state
#  specific sets of holidays on the fly. It aims to make determining whether a
#  specific date is a holiday as fast and flexible as possible.
#
#  Authors: dr-prodigy <maurizio.montel@gmail.com> (c) 2017-2022
#           ryanss <ryanssdev@icloud.com> (c) 2014-2017
#  Website: https://github.com/dr-prodigy/python-holidays
#  License: MIT (see LICENSE file)






class TestSpain(unittest.TestCase):
    def setUp(self):
        self.holidays = holidays.ES(observed=False)
        self.holidays_observed = holidays.ES()
        self.prov_holidays = {

# Path: holidays/utils.py
# def _islamic_to_gre(Gyear: int, Hmonth: int, Hday: int) -> List[date]:
#     """
#     Find the Gregorian dates of all instances of Islamic (Lunar Hijrī) calendar
#     month and day falling within the Gregorian year. There could be up to two
#     such instances in a single Gregorian year since the Islamic (Lunar Hijrī)
#     calendar is about 11 days shorter.
# 
#     Relies on package `hijri_converter
#     <https://www.pypy.org/package/hijri_converter>`__.
# 
#     :param Gyear:
#         The Gregorian year.
# 
#     :param Hmonth:
#         The Lunar Hijrī (Islamic) month.
# 
#     :param Hday:
#         The Lunar Hijrī (Islamic) day.
# 
#     :return:
#         List of Gregorian dates within the Gregorian year specified that
#         matches the Islamic (Lunar Hijrī) calendar day and month specified.
#     """
#     Hyear = convert.Gregorian(Gyear, 1, 1).to_hijri().datetuple()[0]
#     gres = [
#         convert.Hijri(y, Hmonth, Hday).to_gregorian()
#         for y in range(Hyear - 1, Hyear + 2)
#     ]
#     gre_dates = [date(*gre.datetuple()) for gre in gres if gre.year == Gyear]
#     return gre_dates


# Path: test/countries/test_spain.py
import unittest
import holidays
from itertools import product
from datetime import date
from dateutil.easter import easter
from dateutil.relativedelta import relativedelta as rd, TH, FR, MO
from holidays.utils import _islamic_to_gre
from copy import deepcopy

# -*- coding: utf-8 -*-

#  python-holidays
#  ---------------
#  A fast, efficient Python library for generating country, province and state
#  specific sets of holidays on the fly. It aims to make determining whether a
#  specific date is a holiday as fast and flexible as possible.
#
#  Authors: dr-prodigy <maurizio.montel@gmail.com> (c) 2017-2022
#           ryanss <ryanssdev@icloud.com> (c) 2014-2017
#  Website: https://github.com/dr-prodigy/python-holidays
#  License: MIT (see LICENSE file)






class TestSpain(unittest.TestCase):
    def setUp(self):
        self.holidays = holidays.ES(observed=False)
        self.holidays_observed = holidays.ES()
        self.prov_holidays = {

            prov: holidays.ES(observed=False, subdiv=prov)