Class: ActiveMocker::ActiveRecord::Schema
- Inherits:
-
Object
- Object
- ActiveMocker::ActiveRecord::Schema
- Defined in:
- lib/active_mocker/active_record/schema.rb
Class Method Summary collapse
- .add_to_cache(table) ⇒ Object
- .clear_cache ⇒ Object
- .define(options, &block) ⇒ Object
- .parse ⇒ Object
- .search(table_name) ⇒ Object
- .search_cache(table_name) ⇒ Object
Class Method Details
.add_to_cache(table) ⇒ Object
20 21 22 23 |
# File 'lib/active_mocker/active_record/schema.rb', line 20 def self.add_to_cache(table) @tables_cache ||= [] @tables_cache << table unless table.nil? end |
.clear_cache ⇒ Object
32 33 34 |
# File 'lib/active_mocker/active_record/schema.rb', line 32 def self.clear_cache @tables_cache = [] end |
.define(options, &block) ⇒ Object
6 7 8 9 10 11 12 13 14 |
# File 'lib/active_mocker/active_record/schema.rb', line 6 def self.define(, &block) version = [:version] search_result = search_cache(@table_search) search_result unless search_result.nil? schema = parse schema.instance_eval(&block) add_to_cache schema.tables.first schema.tables.first end |
.parse ⇒ Object
16 17 18 |
# File 'lib/active_mocker/active_record/schema.rb', line 16 def self.parse SchemaParser.new(@table_search) end |
.search(table_name) ⇒ Object
36 37 38 39 |
# File 'lib/active_mocker/active_record/schema.rb', line 36 def self.search(table_name) @table_search = table_name search_cache(table_name) end |
.search_cache(table_name) ⇒ Object
25 26 27 28 29 30 |
# File 'lib/active_mocker/active_record/schema.rb', line 25 def self.search_cache(table_name) @tables_cache ||= [] @tables_cache.find do |h| h.name == table_name end end |