spec/spec_helper.rb in message_block-1.0.3 vs spec/spec_helper.rb in message_block-1.0.4
- old
+ new
@@ -1,56 +1,63 @@
require "rubygems"
require "message_block"
require "active_support"
+require "active_model"
require "action_pack"
require "action_view"
require File.dirname(__FILE__) + '/../init'
-# Borrowed model stubs from Rails active_record_helper_test.rb
-# TODO: Re-implement using mocha
-Post = Struct.new("Post", :title, :author_name)
-User = Struct.new("User", :email)
+class Post
+ extend ActiveModel::Naming
-def setup_post
- @post = Post.new
- def @post.errors
- Class.new do
- def on(field)
- case field.to_s
- when "author_name"
- "can't be empty"
- when "body"
- true
- else
- false
- end
- end
- def empty?() false end
- def count() 1 end
- def full_messages() [ "Author name can't be empty" ] end
- end.new
+ attr_accessor :name
+ attr_reader :errors
+
+ def initialize
+ @errors = ActiveModel::Errors.new(self)
+ @errors.add(:name, "can't be blank")
end
- @post.title = "Hello World"
- @post.author_name = ""
+ def read_attribute_for_validation(attr)
+ send(attr)
+ end
+
+ def self.human_attribute_name(attr, options = {})
+ attr
+ end
+
+ def self.lookup_ancestors
+ [self]
+ end
end
-def setup_user
- @user = User.new
- def @user.errors
- Class.new {
- def on(field) field == "email" end
- def empty?() false end
- def count() 1 end
- def full_messages() [ "User email can't be empty" ] end
- }.new
+class User
+ extend ActiveModel::Naming
+
+ attr_accessor :name
+ attr_reader :errors
+
+ def initialize
+ @errors = ActiveModel::Errors.new(self)
+ @errors.add(:name, "can't be blank")
end
- @user.email = ""
+ def read_attribute_for_validation(attr)
+ send(attr)
+ end
+
+ def self.human_attribute_name(attr, options = {})
+ attr
+ end
+
+ def self.lookup_ancestors
+ [self]
+ end
end
+
def controller
@controller ||= Class.new {
def controller_name
"widgets_controller"
end
@@ -65,6 +72,6 @@
}.new
end
def flash
@flash ||= {}
-end
\ No newline at end of file
+end