class DatabaseCleaner::ActiveRecord::Seeded
Attributes
configuration[W]
Public Class Methods
configuration()
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 21 def configuration @configuration ||= Configuration.new end
configure() { |configuration| ... }
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 17 def configure yield(configuration) end
Public Instance Methods
prepare(&seed_data_proc)
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 30 def prepare(&seed_data_proc) generate_seeds(seed_data_proc) unless skip_seeds_generation? clean end
start()
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 26 def start adapter.inject_seeds_from_fixtures_file end
Private Instance Methods
adapter()
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 37 def adapter @adapter ||= Adapter::MYSQL.new(seeds_file_path) end
generate_seeds(seed_data_proc)
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 41 def generate_seeds(seed_data_proc) ::ActiveRecord::Base.transaction { seed_data_proc.call } adapter.dump_database_to_fixtures_file end
seeds_file_path()
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 53 def seeds_file_path @seeds_file_path ||= self.class.configuration.seeds_file_path end
skip_seeds_generation?()
click to toggle source
If the user has configured the gem to skip seeds generation, return true, but only if we already have a seeds file that we can use.
# File lib/database_cleaner/active_record/seeded.rb, line 48 def skip_seeds_generation? raise "The option for 'skip_seed_regeneration' must be a Proc" if skip_seeds_proc && !skip_seeds_proc.respond_to?(:call) skip_seeds_proc.try(:call) && File.exists?(seeds_file_path) end
skip_seeds_proc()
click to toggle source
# File lib/database_cleaner/active_record/seeded.rb, line 57 def skip_seeds_proc @skip_seeds_proc ||= self.class.configuration.skip_seed_regeneration end