We were very inconsistent regarding these rules. Personally I prefer no empty lines around blocks, clases, etc... as recommended by the Ruby style guide [1], and they're the default values in rubocop, so those are the settings I'm applying. The exception is the `private` access modifier, since we were leaving empty lines around it most of the time. That's the default rubocop rule as well. Personally I don't have a strong preference about this one. [1] https://rubystyle.guide/#empty-lines-around-bodies
39 lines
1.0 KiB
Ruby
39 lines
1.0 KiB
Ruby
require "rails_helper"
|
|
|
|
describe Budget::ReclassifiedVote do
|
|
describe "Validations" do
|
|
let(:reclassified_vote) { build(:budget_reclassified_vote) }
|
|
|
|
it "is valid" do
|
|
expect(reclassified_vote).to be_valid
|
|
end
|
|
|
|
it "is not valid without a user" do
|
|
reclassified_vote.user_id = nil
|
|
expect(reclassified_vote).not_to be_valid
|
|
end
|
|
|
|
it "is not valid without an investment" do
|
|
reclassified_vote.investment_id = nil
|
|
expect(reclassified_vote).not_to be_valid
|
|
end
|
|
|
|
it "is not valid without a valid reason" do
|
|
reclassified_vote.reason = nil
|
|
expect(reclassified_vote).not_to be_valid
|
|
|
|
reclassified_vote.reason = ""
|
|
expect(reclassified_vote).not_to be_valid
|
|
|
|
reclassified_vote.reason = "random"
|
|
expect(reclassified_vote).not_to be_valid
|
|
|
|
reclassified_vote.reason = "heading_changed"
|
|
expect(reclassified_vote).to be_valid
|
|
|
|
reclassified_vote.reason = "unfeasible"
|
|
expect(reclassified_vote).to be_valid
|
|
end
|
|
end
|
|
end
|