Files
grecia/spec/models/geozone_spec.rb
Bertocq ed16a78f42 Enables RSpec/ExampleWording and fixes all issues
Both avoiding 'should' and repiting 'it' on the tests description
improves reading them and also makes all descriptions consistent.

Read about cop at http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleWording
2018-01-07 01:03:45 +01:00

43 lines
1.0 KiB
Ruby

require 'rails_helper'
describe Geozone do
let(:geozone) { build(:geozone) }
it "is valid" do
expect(geozone).to be_valid
end
it "is not valid without a name" do
geozone.name = nil
expect(geozone).to_not be_valid
end
describe "#safe_to_destroy?" do
let(:geozone) { create(:geozone) }
it "is true when not linked to other models" do
expect(geozone.safe_to_destroy?).to be_truthy
end
it "is false when already linked to user" do
create(:user, geozone: geozone)
expect(geozone.safe_to_destroy?).to be_falsey
end
it "is false when already linked to proposal" do
create(:proposal, geozone: geozone)
expect(geozone.safe_to_destroy?).to be_falsey
end
it "is false when already linked to spending proposal" do
create(:spending_proposal, geozone: geozone)
expect(geozone.safe_to_destroy?).to be_falsey
end
it "is false when already linked to debate" do
create(:debate, geozone: geozone)
expect(geozone.safe_to_destroy?).to be_falsey
end
end
end