diff --git a/app/models/organization.rb b/app/models/organization.rb index 0f5c471..da0823c 100644 --- a/app/models/organization.rb +++ b/app/models/organization.rb @@ -44,7 +44,7 @@ class Organization < Profile validates_format_of :foundation_year, :with => Noosfero::Constants::INTEGER_FORMAT - validates_format_of :contact_email, :with => Noosfero::Constants::EMAIL_FORMAT, :if => (lambda { |org| !org.contact_email.nil? }) + validates_format_of :contact_email, :with => Noosfero::Constants::EMAIL_FORMAT, :if => (lambda { |org| !org.contact_email.blank? }) xss_terminate :only => [ :acronym, :contact_person, :contact_email, :legal_form, :economic_activity, :management_information ] diff --git a/test/unit/organization_test.rb b/test/unit/organization_test.rb index 1f8ddc8..6f80c87 100644 --- a/test/unit/organization_test.rb +++ b/test/unit/organization_test.rb @@ -77,6 +77,25 @@ class OrganizationTest < Test::Unit::TestCase assert_respond_to org, :contact_email end + should 'validate contact_email if filled' do + org = Organization.new + org.valid? + assert !org.errors.invalid?(:contact_email) + + org.contact_email = '' + org.valid? + assert !org.errors.invalid?(:contact_email) + + + org.contact_email = 'invalid-email' + org.valid? + assert org.errors.invalid?(:contact_email) + + org.contact_email = 'someone@somedomain.com' + org.valid? + assert !org.errors.invalid?(:contact_email) + end + should 'list pending enterprise validations' do org = Organization.new assert_kind_of Array, org.pending_validations -- libgit2 0.21.2