Browse Source

searching by org name tests

pull/648/head
JG 3 years ago
parent
commit
a1912edc9c
  1. 18
      spec/models/scheme_spec.rb

18
spec/models/scheme_spec.rb

@ -9,24 +9,30 @@ RSpec.describe Scheme, type: :model do
end end
describe "scopes" do describe "scopes" do
let!(:scheme_1) { FactoryBot.create(:scheme) } let(:organisation) { FactoryBot.create(:organisation, name: "Foo") }
let!(:scheme_2) { FactoryBot.create(:scheme) } let(:different_organisation) { FactoryBot.create(:organisation, name: "Bar") }
let!(:scheme_1) { FactoryBot.create(:scheme, organisation: organisation) }
let!(:scheme_2) { FactoryBot.create(:scheme, organisation: different_organisation) }
context "when searching by code" do context "when searching by code" do
it "returns case insensitive matching records" do it "returns case insensitive matching records" do
expect(described_class.search_by_code(scheme_1.code.upcase).count).to eq(1) expect(described_class.search_by_code(scheme_1.code.upcase).count).to eq(1)
expect(described_class.search_by_code(scheme_1.code.downcase).count).to eq(1) expect(described_class.search_by_code(scheme_1.code.downcase).count).to eq(1)
expect(described_class.search_by_code(scheme_1.code.downcase).first.code).to eq(scheme_1.code)
expect(described_class.search_by_code(scheme_2.code.upcase).count).to eq(1) expect(described_class.search_by_code(scheme_2.code.upcase).count).to eq(1)
expect(described_class.search_by_code(scheme_2.code.downcase).count).to eq(1) expect(described_class.search_by_code(scheme_2.code.downcase).count).to eq(1)
expect(described_class.search_by_code(scheme_2.code.downcase).first.code).to eq(scheme_2.code)
end end
end end
context "when searching by service name" do context "when searching by service name" do
it "returns case insensitive matching records" do it "returns case insensitive matching records" do
expect(described_class.search_by_organisation(scheme_1.organisation.name.upcase).count).to eq(1) expect(described_class.search_by_organisation(organisation.name.upcase).count).to eq(1)
expect(described_class.search_by_organisation(scheme_1.organisation.name.downcase).count).to eq(1) expect(described_class.search_by_organisation(organisation.name.downcase).count).to eq(1)
expect(described_class.search_by_organisation(scheme_2.organisation.name.upcase).count).to eq(1) expect(described_class.search_by_organisation(organisation.name.upcase).first.organisation.name).to eq(scheme_1.organisation.name)
expect(described_class.search_by_organisation(scheme_2.organisation.name.downcase).count).to eq(1) expect(described_class.search_by_organisation(different_organisation.name.upcase).count).to eq(1)
expect(described_class.search_by_organisation(different_organisation.name.downcase).count).to eq(1)
expect(described_class.search_by_organisation(different_organisation.name.upcase).first.organisation.name).to eq(scheme_2.organisation.name)
end end
end end
end end

Loading…
Cancel
Save