From 699c74a8f08563ba745e091e12a113bd50ac0387 Mon Sep 17 00:00:00 2001 From: Benjamin Neff Date: Fri, 1 Jul 2016 05:06:02 +0200 Subject: [PATCH] validate message text --- lib/diaspora_federation/validators/message_validator.rb | 3 +++ .../validators/message_validator_spec.rb | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/lib/diaspora_federation/validators/message_validator.rb b/lib/diaspora_federation/validators/message_validator.rb index 84650d3..fd1c478 100644 --- a/lib/diaspora_federation/validators/message_validator.rb +++ b/lib/diaspora_federation/validators/message_validator.rb @@ -7,6 +7,9 @@ module DiasporaFederation rule :author, %i(not_empty diaspora_id) rule :guid, :guid rule :conversation_guid, :guid + + rule :text, [:not_empty, + length: {maximum: 65_535}] end end end diff --git a/spec/lib/diaspora_federation/validators/message_validator_spec.rb b/spec/lib/diaspora_federation/validators/message_validator_spec.rb index 90b5d23..04cf5d0 100644 --- a/spec/lib/diaspora_federation/validators/message_validator_spec.rb +++ b/spec/lib/diaspora_federation/validators/message_validator_spec.rb @@ -19,5 +19,13 @@ module DiasporaFederation let(:property) { :conversation_guid } end end + + describe "#text" do + it_behaves_like "a property with a value validation/restriction" do + let(:property) { :text } + let(:wrong_values) { ["", "a" * 65_536] } + let(:correct_values) { ["a" * 65_535] } + end + end end end