diff --git a/app/helpers/filters_helper.rb b/app/helpers/filters_helper.rb index 80f3199d5..f3d03cc01 100644 --- a/app/helpers/filters_helper.rb +++ b/app/helpers/filters_helper.rb @@ -91,8 +91,8 @@ private filters.each.sum do |category, category_filters| if %w[status years bulk_upload_id].include?(category) category_filters.count(&:present?) - elsif %w[assigned_to organisation].include?(category) - category_filters != "all" ? 1 : 0 + elsif %w[user owning_organisation managing_organisation].include?(category) + 1 else 0 end diff --git a/app/views/logs/_log_filters.html.erb b/app/views/logs/_log_filters.html.erb index 8f73a12a3..56e669ce9 100644 --- a/app/views/logs/_log_filters.html.erb +++ b/app/views/logs/_log_filters.html.erb @@ -63,7 +63,7 @@ category: "assigned_to", } %> - <% if @current_user.support? || @current_user.organisation.stock_owners.count > 1 && request.path == "/lettings-logs" %> + <% if (@current_user.support? || @current_user.organisation.stock_owners.count > 1) && request.path == "/lettings-logs" %> <%= render partial: "filters/radio_filter", locals: { f:, options: { diff --git a/spec/features/lettings_log_spec.rb b/spec/features/lettings_log_spec.rb index 8d245fffe..f849decc1 100644 --- a/spec/features/lettings_log_spec.rb +++ b/spec/features/lettings_log_spec.rb @@ -59,9 +59,17 @@ RSpec.describe "Lettings Log Features" do context "when filtering logs" do let(:user) { create(:user, last_sign_in_at: Time.zone.now) } + let(:stock_owner_1) { create(:organisation, name: "stock owner 1") } + let(:stock_owner_2) { create(:organisation, name: "stock owner 2") } + let(:managing_agent_1) { create(:organisation, name: "managing agent 1") } + let(:managing_agent_2) { create(:organisation, name: "managing agent 2") } context "when I am signed in" do before do + FactoryBot.create(:organisation_relationship, child_organisation: user.organisation, parent_organisation: stock_owner_1) + FactoryBot.create(:organisation_relationship, child_organisation: user.organisation, parent_organisation: stock_owner_2) + FactoryBot.create(:organisation_relationship, child_organisation: managing_agent_1, parent_organisation: user.organisation) + FactoryBot.create(:organisation_relationship, child_organisation: managing_agent_2, parent_organisation: user.organisation) visit("/lettings-logs") fill_in("user[email]", with: user.email) fill_in("user[password]", with: user.password) @@ -80,11 +88,15 @@ RSpec.describe "Lettings Log Features" do check("Not started") check("In progress") choose("You") + choose("Specific owning organisation") + select(stock_owner_1.name, from: "owning_organisation") + choose("Specific managing organisation") + select(managing_agent_1.name, from: "managing_organisation") click_button("Apply filters") end it "displays the filters component with a correct count and clear button" do - expect(page).to have_content("3 filters applied") + expect(page).to have_content("5 filters applied") expect(page).to have_content("Clear") end diff --git a/spec/features/sales_log_spec.rb b/spec/features/sales_log_spec.rb index 023353fef..190b9f775 100644 --- a/spec/features/sales_log_spec.rb +++ b/spec/features/sales_log_spec.rb @@ -96,9 +96,17 @@ RSpec.describe "Sales Log Features" do context "when filtering logs" do let(:user) { create(:user, last_sign_in_at: Time.zone.now) } + let(:stock_owner_1) { create(:organisation, name: "stock owner 1") } + let(:stock_owner_2) { create(:organisation, name: "stock owner 2") } + let(:managing_agent_1) { create(:organisation, name: "managing agent 1") } + let(:managing_agent_2) { create(:organisation, name: "managing agent 2") } context "when I am signed in" do before do + FactoryBot.create(:organisation_relationship, child_organisation: user.organisation, parent_organisation: stock_owner_1) + FactoryBot.create(:organisation_relationship, child_organisation: user.organisation, parent_organisation: stock_owner_2) + FactoryBot.create(:organisation_relationship, child_organisation: managing_agent_1, parent_organisation: user.organisation) + FactoryBot.create(:organisation_relationship, child_organisation: managing_agent_2, parent_organisation: user.organisation) visit("/sales-logs") fill_in("user[email]", with: user.email) fill_in("user[password]", with: user.password) @@ -117,11 +125,15 @@ RSpec.describe "Sales Log Features" do check("Not started") check("In progress") choose("You") + choose("Specific owning organisation") + select(stock_owner_1.name, from: "owning_organisation") + choose("Specific managing organisation") + select(managing_agent_1.name, from: "managing_organisation") click_button("Apply filters") end it "displays the filters component with a correct count and clear button" do - expect(page).to have_content("3 filters applied") + expect(page).to have_content("5 filters applied") expect(page).to have_content("Clear") end