Module: Manufactory::ActiveRecordExtensions

Included in:
ActiveRecord::Base
Defined in:
lib/manufactory/adapters/activerecord.rb

Instance Method Summary collapse

Instance Method Details

#make(*args, &block) ⇒ Object



44
45
46
47
48
49
50
51
# File 'lib/manufactory/adapters/activerecord.rb', line 44

def make(*args, &block)
  lathe = Lathe.run(Manufactory::ActiveRecordAdapter, self.new, *args)
  unless Manufactory.nerfed?
    lathe.object.save!
    lathe.object.reload
  end
  lathe.object(&block)
end

#make_unsaved(*args) {|object| ... } ⇒ Object

Yields:

  • (object)


53
54
55
56
57
# File 'lib/manufactory/adapters/activerecord.rb', line 53

def make_unsaved(*args)
  object = Manufactory.with_save_nerfed { make(*args) }
  yield object if block_given?
  object
end

#plan(*args) ⇒ Object



59
60
61
62
# File 'lib/manufactory/adapters/activerecord.rb', line 59

def plan(*args)
  lathe = Lathe.run(Manufactory::ActiveRecordAdapter, self.new, *args)
  Manufactory::ActiveRecordAdapter.assigned_attributes_without_associations(lathe)
end