Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 5 additions & 8 deletions app/helpers/date_range_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,11 @@ def default_date
end

def selected_interval
date_range_params.split(" - ").map do |d|
Date.strptime(d, "%B %d, %Y")
rescue
flash.now[:notice] = "Invalid Date range provided. Reset to default date range"
return default_date.split(" - ").map do |d|
Date.strptime(d.to_s, "%B %d, %Y")
end
end
start_date, end_date = date_range_params.split(" - ")
[Date.strptime(start_date.to_s, "%B %d, %Y"), Date.strptime(end_date.to_s, "%B %d, %Y")]
rescue
flash.now[:notice] = "Invalid Date range provided. Reset to default date range"
default_date.split(" - ").map { |d| Date.strptime(d, "%B %d, %Y") }
end

def selected_range
Expand Down
15 changes: 15 additions & 0 deletions spec/helpers/date_range_helper_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,21 @@ def initialize(params = {}, flash = nil)
end
end

context "with an open-ended date range" do
it "falls back to default date range and sets a flash notice" do
open_ended_range = "August 25, 2025 - "
flash_now = {}
flash_double = double("flash", now: flash_now)
helper = dummy_class.new({filters: {date_range: open_ended_range}}, flash_double)

interval = helper.selected_interval
default_start, default_end = helper.default_date.split(" - ").map { |d| Date.strptime(d, "%B %d, %Y") }

expect(interval).to eq([default_start, default_end])
expect(flash_now[:notice]).to eq("Invalid Date range provided. Reset to default date range")
end
end

context "with an invalid date range" do
it "falls back to default date range and sets a flash notice" do
invalid_range = "November 08 - February 08"
Expand Down