Sha256: 136d96ae634b78b72bbc29ba5d9f57f8f496e4f8417eab89592e2e2df8beb640
Contents?: true
Size: 1.5 KB
Versions: 2
Compression:
Stored size: 1.5 KB
Contents
require "active_model" class Customer < Struct.new(:name, :id) extend ActiveModel::Naming include ActiveModel::Conversion undef_method :to_json def to_xml(options={}) if options[:builder] options[:builder].name name else "<name>#{name}</name>" end end def to_js(options={}) "name: #{name.inspect}" end alias :to_text :to_js def errors [] end def persisted? id.present? end end class Post < Struct.new(:title, :author_name, :body, :secret, :persisted, :written_on, :cost) extend ActiveModel::Naming include ActiveModel::Conversion extend ActiveModel::Translation alias_method :secret?, :secret alias_method :persisted?, :persisted def initialize(*args) super @persisted = false end attr_accessor :author def author_attributes=(attributes); end attr_accessor :comments, :comment_ids def comments_attributes=(attributes); end attr_accessor :tags def tags_attributes=(attributes); end end class Comment extend ActiveModel::Naming include ActiveModel::Conversion attr_reader :id attr_reader :post_id def initialize(id = nil, post_id = nil); @id, @post_id = id, post_id end def to_key; id ? [id] : nil end def save; @id = 1; @post_id = 1 end def persisted?; @id.present? end def to_param; @id.to_s; end def name @id.nil? ? "new #{self.class.name.downcase}" : "#{self.class.name.downcase} ##{@id}" end attr_accessor :relevances def relevances_attributes=(attributes); end attr_accessor :body end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
activejob-lock-0.0.2 | rails/actionpack/test/lib/controller/fake_models.rb |
activejob-lock-0.0.1 | rails/actionpack/test/lib/controller/fake_models.rb |