module MR::FakeRecord::Persistence::InstanceMethods

Public Instance Methods

destroy() click to toggle source
# File lib/mr/fake_record/persistence.rb, line 67
def destroy
  @destroyed = true
end
destroyed?() click to toggle source
# File lib/mr/fake_record/persistence.rb, line 79
def destroyed?
  !!@destroyed
end
errors() click to toggle source
# File lib/mr/fake_record/persistence.rb, line 83
def errors
  @errors ||= ActiveModel::Errors.new(self)
end
new_record?() click to toggle source
# File lib/mr/fake_record/persistence.rb, line 75
def new_record?
  !self.id
end
reset_save_called() click to toggle source
# File lib/mr/fake_record/persistence.rb, line 98
def reset_save_called
  @save_called = false
end
save!() click to toggle source

ActiveRecord methods

# File lib/mr/fake_record/persistence.rb, line 55
def save!
  raise ActiveRecord::RecordInvalid.new(self) unless self.valid?
  self.id ||= MR::Factory.primary_key(self.class)
  current_time = CurrentTime.new
  self.created_at ||= current_time if self.respond_to?(:created_at=)
  if self.respond_to?(:updated_at=) && !self.updated_at_changed?
    self.updated_at = current_time
  end
  self.saved_attributes = self.attributes.dup
  @save_called = true
end
save_called() click to toggle source

Non-ActiveRecord methods

# File lib/mr/fake_record/persistence.rb, line 93
def save_called
  @save_called = false if @save_called.nil?
  @save_called
end
transaction(&block) click to toggle source
# File lib/mr/fake_record/persistence.rb, line 71
def transaction(&block)
  self.class.transaction(&block)
end
valid?() click to toggle source
# File lib/mr/fake_record/persistence.rb, line 87
def valid?
  self.errors.empty?
end