Class: Fixturizer::Engines::Models
- Inherits:
-
Object
- Object
- Fixturizer::Engines::Models
- Defined in:
- lib/fixturizer/engines/models.rb
Constant Summary collapse
- ADAPTERS =
{ mongoid: ::Fixturizer::Adapters::Mongoid }.freeze
Instance Attribute Summary collapse
-
#generated ⇒ Object
readonly
Returns the value of attribute generated.
-
#models ⇒ Object
readonly
Returns the value of attribute models.
-
#order ⇒ Object
readonly
Returns the value of attribute order.
Instance Method Summary collapse
- #generate ⇒ Object
-
#initialize ⇒ Models
constructor
A new instance of Models.
- #inject ⇒ Object
- #populate ⇒ Object
Constructor Details
#initialize ⇒ Models
Returns a new instance of Models.
10 11 12 13 14 15 16 17 |
# File 'lib/fixturizer/engines/models.rb', line 10 def initialize @configuration = Fixturizer::Services.get.configuration @models = @configuration.models @order = @configuration.models_order @type = @configuration.models_type @generated = {} extend ADAPTERS[@type] end |
Instance Attribute Details
#generated ⇒ Object (readonly)
Returns the value of attribute generated.
8 9 10 |
# File 'lib/fixturizer/engines/models.rb', line 8 def generated @generated end |
#models ⇒ Object (readonly)
Returns the value of attribute models.
8 9 10 |
# File 'lib/fixturizer/engines/models.rb', line 8 def models @models end |
#order ⇒ Object (readonly)
Returns the value of attribute order.
8 9 10 |
# File 'lib/fixturizer/engines/models.rb', line 8 def order @order end |
Instance Method Details
#generate ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/fixturizer/engines/models.rb', line 25 def generate @generated.clear raise 'Order field format missmatch, not an array' unless @order.nil? || @order.is_a?(Array) if @order raise 'Order field size missmatch for configurate definitions' unless @order.size == @models.size @order.each do |item| raise "Definition #{item} not found in models definitions" unless @models.include?(item) @generated[item] = generate_collection(name: item) end else @models.each_key do |item| @generated[item] = generate_collection(name: item) end end end |
#inject ⇒ Object
44 45 46 47 |
# File 'lib/fixturizer/engines/models.rb', line 44 def inject raise 'Data not generated' if @generated.empty? inject_data end |
#populate ⇒ Object
19 20 21 22 23 |
# File 'lib/fixturizer/engines/models.rb', line 19 def populate generate inject true end |