Commit 224e08e591d3c36e3b12cef4fa7d1c34c40e9d17
1 parent
02d5bfa0
Exists in
master
and in
29 other branches
ActionItem192: validate commants email format for unauthenticated user
git-svn-id: https://svn.colivre.coop.br/svn/noosfero/trunk@1672 3f533792-8f58-4932-b0fe-aaf55b0a4547
Showing
2 changed files
with
7 additions
and
1 deletions
Show diff stats
app/models/comment.rb
... | ... | @@ -9,6 +9,7 @@ class Comment < ActiveRecord::Base |
9 | 9 | # unauthenticated authors: |
10 | 10 | validates_presence_of :name, :if => (lambda { |record| !record.email.blank? }) |
11 | 11 | validates_presence_of :email, :if => (lambda { |record| !record.name.blank? }) |
12 | + validates_format_of :email, :with => Noosfero::Constants::EMAIL_FORMAT, :if => (lambda { |record| !record.email.blank? }) | |
12 | 13 | |
13 | 14 | # require either a recognized author or an external person |
14 | 15 | validates_presence_of :author_id, :if => (lambda { |rec| rec.name.blank? && rec.email.blank? }) | ... | ... |
test/unit/comment_test.rb
... | ... | @@ -41,7 +41,7 @@ class CommentTest < Test::Unit::TestCase |
41 | 41 | # if given name, require email |
42 | 42 | c1 = Comment.new |
43 | 43 | c1.name = 'My Name' |
44 | - assert_mandatory c1, :email | |
44 | + assert_mandatory c1, :email, 'my@email.com' | |
45 | 45 | |
46 | 46 | # if given email, require name |
47 | 47 | c2 = Comment.new |
... | ... | @@ -137,5 +137,10 @@ class CommentTest < Test::Unit::TestCase |
137 | 137 | assert_equal comments, Comment.recent(2) |
138 | 138 | end |
139 | 139 | |
140 | + should 'not accept invalid email' do | |
141 | + c = Comment.new(:name => 'My Name', :email => 'my@invalid') | |
142 | + c.valid? | |
143 | + assert c.errors.invalid?(:email) | |
144 | + end | |
140 | 145 | |
141 | 146 | end | ... | ... |