class DatabaseCleaner::DataMapper::Transaction

Public Instance Methods

clean(repository = nil) click to toggle source
# File lib/database_cleaner/data_mapper/transaction.rb, line 16
def clean(repository = nil)
  repository = self.db if repository.nil?
  ::DataMapper.repository(repository) do |r|
    adapter = r.adapter
    while adapter.current_transaction
      adapter.current_transaction.rollback
      adapter.pop_transaction
    end
  end
end
start(repository = nil) click to toggle source

TODO Figure out repositories, may have to refactor connection_klass to something more sensible

# File lib/database_cleaner/data_mapper/transaction.rb, line 7
def start(repository = nil)
  repository = self.db if repository.nil?
  ::DataMapper.repository(repository) do |r|
    transaction = DataMapper::Transaction.new(r)
    transaction.begin
    r.adapter.push_transaction(transaction)
  end
end