diff options
-rw-r--r-- | app/models/holiday_import.rb | 12 | ||||
-rw-r--r-- | spec/models/holiday_import_spec.rb | 7 |
2 files changed, 15 insertions, 4 deletions
diff --git a/app/models/holiday_import.rb b/app/models/holiday_import.rb index c6019fac0..98a9b96fc 100644 --- a/app/models/holiday_import.rb +++ b/app/models/holiday_import.rb @@ -84,10 +84,14 @@ class HolidayImport end def populate_from_suggestions - holiday_info = Holidays.between(start_date, end_date, @country_code.to_sym, :observed) - holiday_info.each do |holiday_info_hash| - holidays << Holiday.new(:description => holiday_info_hash[:name], - :day => holiday_info_hash[:date]) + begin + holiday_info = Holidays.between(start_date, end_date, @country_code.to_sym, :observed) + holiday_info.each do |holiday_info_hash| + holidays << Holiday.new(:description => holiday_info_hash[:name], + :day => holiday_info_hash[:date]) + end + rescue Holidays::UnknownRegionError + [] end end end diff --git a/spec/models/holiday_import_spec.rb b/spec/models/holiday_import_spec.rb index 59448104e..7ec5c04d5 100644 --- a/spec/models/holiday_import_spec.rb +++ b/spec/models/holiday_import_spec.rb @@ -102,6 +102,13 @@ describe HolidayImport do holiday.day.should == Date.new(2014, 1, 1) end + it 'returns an empty array for an unknown country code' do + AlaveteliConfiguration.stub(:iso_country_code).and_return('UNKNOWN_COUNTRY_CODE') + @holiday_import = HolidayImport.new(:source => 'suggestions') + @holiday_import.populate + expect(@holiday_import.holidays).to be_empty + end + it 'should return a flag that it has been populated' do holidays = [ { :date => Date.new(2014, 1, 1), :name => "New Year's Day", |