diff --git a/lib/diaspora_federation/validators/poll_validator.rb b/lib/diaspora_federation/validators/poll_validator.rb index 6b336d4..f1d598f 100644 --- a/lib/diaspora_federation/validators/poll_validator.rb +++ b/lib/diaspora_federation/validators/poll_validator.rb @@ -6,6 +6,7 @@ module DiasporaFederation rule :guid, :guid rule :question, [:not_empty, length: {maximum: 255}] + rule :poll_answers, length: {minimum: 2} end end end diff --git a/spec/lib/diaspora_federation/validators/poll_validator_spec.rb b/spec/lib/diaspora_federation/validators/poll_validator_spec.rb index 521ea1d..a0ae57f 100644 --- a/spec/lib/diaspora_federation/validators/poll_validator_spec.rb +++ b/spec/lib/diaspora_federation/validators/poll_validator_spec.rb @@ -17,5 +17,18 @@ module DiasporaFederation let(:correct_values) { ["a" * 255] } end end + + describe "#poll_answers" do + it_behaves_like "a property with a value validation/restriction" do + let(:property) { :poll_answers } + let(:wrong_values) { [nil, [FactoryGirl.attributes_for(:poll_answer_entity)]] } + let(:correct_values) { + [ + Array.new(2) { FactoryGirl.build(:poll_answer_entity) }, + Array.new(5) { FactoryGirl.build(:poll_answer_entity) } + ] + } + end + end end end