aboutsummaryrefslogtreecommitdiffstats
path: root/spec/models/contact_validator_spec.rb
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2014-05-15 16:09:29 +0100
committerLouise Crow <louise.crow@gmail.com>2014-05-15 16:09:29 +0100
commit26348ce676f7ebbabcc535b2ecf00f99f8fe85c0 (patch)
tree6034dd656a0f9af152f24d6c491b5e61a7190a7d /spec/models/contact_validator_spec.rb
parent851ef575cf3c55a3bb194381497b958c2a3ebf1a (diff)
parentb3fa23047bf96bd6a08273c9491ac1ee3b4a3f80 (diff)
Merge branch 'release/0.18' into wdtk
Diffstat (limited to 'spec/models/contact_validator_spec.rb')
-rw-r--r--spec/models/contact_validator_spec.rb49
1 files changed, 47 insertions, 2 deletions
diff --git a/spec/models/contact_validator_spec.rb b/spec/models/contact_validator_spec.rb
index 9ea0fac49..0f5403967 100644
--- a/spec/models/contact_validator_spec.rb
+++ b/spec/models/contact_validator_spec.rb
@@ -1,8 +1,53 @@
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
-describe ContactValidator, " when blah" do
- before do
+describe ContactValidator do
+
+ describe :new do
+
+ let(:valid_params) do
+ { :name => "Vinny Vanilli",
+ :email => "vinny@localhost",
+ :subject => "Why do I have such an ace name?",
+ :message => "You really should know!!!\n\nVinny" }
+ end
+
+ it 'validates specified attributes' do
+ ContactValidator.new(valid_params).should be_valid
+ end
+
+ it 'validates name is present' do
+ valid_params.except!(:name)
+ validator = ContactValidator.new(valid_params)
+ expect(validator).to have(1).error_on(:name)
+ end
+
+ it 'validates email is present' do
+ valid_params.except!(:email)
+ validator = ContactValidator.new(valid_params)
+ # We have 2 errors on email because of the format validator
+ expect(validator).to have(2).errors_on(:email)
+ end
+
+ it 'validates email format' do
+ valid_params.merge!({:email => 'not-an-email'})
+ validator = ContactValidator.new(valid_params)
+ expect(validator.errors_on(:email)).to include("Email doesn't look like a valid address")
+ end
+
+ it 'validates subject is present' do
+ valid_params.except!(:subject)
+ validator = ContactValidator.new(valid_params)
+ expect(validator).to have(1).error_on(:subject)
+ end
+
+ it 'validates message is present' do
+ valid_params.except!(:message)
+ validator = ContactValidator.new(valid_params)
+ expect(validator).to have(1).error_on(:message)
+ end
+
end
+
end