Browse Source

Add tests

pull/2561/head
Manny Dinssa 2 years ago
parent
commit
52a6d4ffe7
  1. 7
      spec/factories/merge_requests.rb
  2. 26
      spec/models/merge_request_spec.rb
  3. 19
      spec/requests/organisations_controller_spec.rb

7
spec/factories/merge_requests.rb

@ -0,0 +1,7 @@
FactoryBot.define do
factory :merge_request do
status { "incomplete" }
merge_date { nil }
association :requesting_organisation, factory: :organisation
end
end

26
spec/models/merge_request_spec.rb

@ -0,0 +1,26 @@
require "rails_helper"
RSpec.describe MergeRequest, type: :model do
describe ".visible" do
let(:open_collection_period_start_date) { 1.year.ago }
let!(:merged_recent) { create(:merge_request, status: "request_merged", merge_date: 3.months.ago) }
let!(:merged_old) { create(:merge_request, status: "request_merged", merge_date: 18.months.ago) }
let!(:not_merged) { create(:merge_request, status: "incomplete") }
before do
allow(FormHandler.instance).to receive(:start_date_of_earliest_open_collection_period).and_return(open_collection_period_start_date)
end
it "includes merged requests with merge dates after the open collection period start date" do
expect(described_class.visible).to include(merged_recent)
end
it "excludes merged requests with merge dates before the open collection period start date" do
expect(described_class.visible).not_to include(merged_old)
end
it "includes not_merged requests" do
expect(described_class.visible).to include(not_merged)
end
end
end

19
spec/requests/organisations_controller_spec.rb

@ -1017,6 +1017,25 @@ RSpec.describe OrganisationsController, type: :request do
expect(page).to have_field("search", type: "search")
end
it "shows the merge request list" do
expect(page).to have_content("Merge requests")
end
it "has a create new merge request button" do
expect(page).to have_link("Create new merge request")
end
it "shows count of unresolved merge requests" do
total_number_of_unresolved_merge_requests = MergeRequest.visible.not_merged.count
expect(page).to have_content("#{total_number_of_unresolved_merge_requests} unresolved merge requests")
end
it "displays 'No merge requests' when @merge_requests is empty" do
allow(MergeRequest).to receive(:visible).and_return(nil)
expect(page).to have_content("No merge requests")
end
context "when viewing a specific organisation's lettings logs" do
let(:parent_organisation) { create(:organisation) }
let(:child_organisation) { create(:organisation) }

Loading…
Cancel
Save