Class: DatabaseCleaner::ActiveRecord::Base
- Inherits:
-
Strategy
- Object
- Strategy
- DatabaseCleaner::ActiveRecord::Base
- Defined in:
- lib/database_cleaner/active_record/base.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#connection_hash ⇒ Object
Returns the value of attribute connection_hash.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#connection_hash ⇒ Object
Returns the value of attribute connection_hash.
38 39 40 |
# File 'lib/database_cleaner/active_record/base.rb', line 38 def connection_hash @connection_hash end |
Class Method Details
.exclusion_condition(column_name) ⇒ Object
26 27 28 29 30 31 |
# File 'lib/database_cleaner/active_record/base.rb', line 26 def self.exclusion_condition(column_name) <<~SQL #{column_name} <> '#{DatabaseCleaner::ActiveRecord::Base.migration_table_name}' AND #{column_name} <> '#{::ActiveRecord::Base.}' SQL end |
.migration_table_name ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/database_cleaner/active_record/base.rb', line 16 def self.migration_table_name if ::ActiveRecord::Base.connection_pool.respond_to?(:schema_migration) # Rails >= 7.2 ::ActiveRecord::Base.connection_pool.schema_migration.table_name elsif ::ActiveRecord::Base.connection.respond_to?(:schema_migration) # Rails >= 6.0 ::ActiveRecord::Base.connection.schema_migration.table_name else ::ActiveRecord::SchemaMigration.table_name end end |
Instance Method Details
#connection_class ⇒ Object
40 41 42 43 44 45 46 47 48 |
# File 'lib/database_cleaner/active_record/base.rb', line 40 def connection_class @connection_class ||= if db && !db.is_a?(Symbol) db elsif connection_hash (lookup_from_connection_pool rescue nil) || establish_connection else ::ActiveRecord::Base end end |
#db= ⇒ Object
33 34 35 36 |
# File 'lib/database_cleaner/active_record/base.rb', line 33 def db=(*) super load_config end |