Commit c245b717

mo k <mo@mokhan.ca>
2012-05-22 13:20:02
add specs to test the error message supplied when an invalid url is specified.
1 parent f71649a
Changed files (2)
app
models
spec
app/models/user.rb
@@ -25,3 +25,9 @@ class User < ActiveRecord::Base
     creation.user == self
   end
 end
+
+class UrlValidation < ActiveModel::Validator
+  def validate(record)
+    
+  end
+end
spec/models/user_spec.rb
@@ -12,18 +12,28 @@ describe User do
   end
   describe "when a website url is supplied" do
     describe "when the url is valid" do
-      it "can validate" do
-        user = User.new
+      let(:user) {User.new}
+      before(:each) do
         user.update_attributes(:website => 'http://example.com')
+      end
+      it "can validate" do
         user.errors[:website].any?.should == false
       end
+      it "should not have any validation error messages" do
+        user.errors[:website].should === []
+      end
     end
     describe "when the url is not valid" do
-      it "cannot validate" do
-        user = User.new
+      let(:user) {User.new}
+      before(:each) do
         user.update_attributes(:website => 'blah')
+      end
+      it "cannot validate" do
         user.errors[:website].any?.should == true
       end
+      it "should have an error message" do
+        user.errors[:website].should === ["is invalid"]
+      end
     end
   end
 end