database_cleaner-sequel
database_cleaner-sequel copied to clipboard
Database Cleaner Adapter for Sequel
Clean your Sequel databases with Database Cleaner.
See https://github.com/DatabaseCleaner/database_cleaner for more information.
Installation
# Gemfile
group :test do
gem 'database_cleaner-sequel'
end
# test_helper.rb
DatabaseCleaner[:sequel].strategy = :transaction
class Minitest::Spec
before :each do
DatabaseCleaner[:sequel].start
end
after :each do
DatabaseCleaner[:sequel].clean
end
end
Supported Strategies
Three strategies are supported:
- Transaction (default)
- Truncation
- Deletion
Strategy configuration options
The transaction strategy accepts no options.
The truncation and deletion strategies may accept the following options:
:onlyand:exceptmay take a list of table names:
# Only truncate the "users" table.
DatabaseCleaner[:sequel].strategy = :truncation, only: ["users"]
# Delete all tables except the "users" table.
DatabaseCleaner[:sequel].strategy = :deletion, except: ["users"]
:pre_count- When set totrue, this will check each table for existing rows before truncating or deleting it. This can speed up test suites when many of the tables are never populated. Defaults tofalse.
Adapter configuration options
#db defaults to the default Sequel database, but can be specified manually in a few ways:
# Sequel connection object
DatabaseCleaner[:sequel].db = Sequel.connect(uri)
# Back to default:
DatabaseCleaner[:sequel].db = :default
# Multiple Sequel databases can be specified:
DatabaseCleaner[:sequel, db: :default]
DatabaseCleaner[:sequel, db: Sequel.connect(uri)]
COPYRIGHT
See LICENSE for details.