7 changed files with 185 additions and 61 deletions
@ -0,0 +1,8 @@
|
||||
module FiltersHelper |
||||
def filter_selected?(filter) |
||||
return true unless cookies[:case_logs_filters] |
||||
|
||||
selected_filters = JSON.parse(cookies[:case_logs_filters]) |
||||
selected_filters["status"].present? && selected_filters["status"].include?(filter.to_s) |
||||
end |
||||
end |
@ -0,0 +1,26 @@
|
||||
require "rails_helper" |
||||
|
||||
RSpec.describe FiltersHelper do |
||||
describe "#filter_selected?" do |
||||
context "when no filters are selected" do |
||||
it "returns true for all filters" do |
||||
expect(filter_selected?("completed")).to be_truthy |
||||
expect(filter_selected?("in_progress")).to be_truthy |
||||
end |
||||
end |
||||
|
||||
context "one filter is selected" do |
||||
before do |
||||
cookies[:case_logs_filters] = { "status": "in_progress" }.to_json |
||||
end |
||||
|
||||
it "returns false for non selected filters" do |
||||
expect(filter_selected?("completed")).to be_falsey |
||||
end |
||||
|
||||
it "returns true for selected filter" do |
||||
expect(filter_selected?("in_progress")).to be_truthy |
||||
end |
||||
end |
||||
end |
||||
end |
Loading…
Reference in new issue