4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
# File 'lib/database_cleaner/generic/truncation.rb', line 4
def initialize(opts={})
if !opts.empty? && !(opts.keys - [:only, :except, :pre_count, :reset_ids, :cache_tables]).empty?
raise ArgumentError, "The only valid options are :only, :except, :pre_count, :reset_ids or :cache_tables. You specified #{opts.keys.join(',')}."
end
if opts.has_key?(:only) && opts.has_key?(:except)
raise ArgumentError, "You may only specify either :only or :except. Doing both doesn't really make sense does it?"
end
@only = opts[:only]
@tables_to_exclude = Array( (opts[:except] || []).dup ).flatten
@tables_to_exclude += migration_storage_names
@pre_count = opts[:pre_count]
@reset_ids = opts[:reset_ids]
@cache_tables = opts.has_key?(:cache_tables) ? !!opts[:cache_tables] : true
end
|