class SchemaLoadingTest

Public Instance Methods

test_basic_model_is_loaded_once() click to toggle source
# File activerecord/test/cases/schema_loading_test.rb, line 20
def test_basic_model_is_loaded_once
  klass = define_model
  klass.new
  assert_equal 1, klass.load_schema_calls
end
test_model_with_changed_custom_lock_is_loaded_twice() click to toggle source
# File activerecord/test/cases/schema_loading_test.rb, line 35
def test_model_with_changed_custom_lock_is_loaded_twice
  klass = define_model do |c|
    c.table_name = :lock_without_defaults_cust
  end
  klass.new
  klass.locking_column = :custom_lock_version
  klass.new
  assert_equal 2, klass.load_schema_calls
end
test_model_with_custom_lock_is_loaded_once() click to toggle source
# File activerecord/test/cases/schema_loading_test.rb, line 26
def test_model_with_custom_lock_is_loaded_once
  klass = define_model do |c|
    c.table_name = :lock_without_defaults_cust
    c.locking_column = :custom_lock_version
  end
  klass.new
  assert_equal 1, klass.load_schema_calls
end

Private Instance Methods

define_model() { |self| ... } click to toggle source
# File activerecord/test/cases/schema_loading_test.rb, line 47
def define_model
  Class.new(ActiveRecord::Base) do
    include SchemaLoadCounter
    self.table_name = :lock_without_defaults
    yield self if block_given?
  end
end