class Katapult::Generators::ModelSpecsGenerator
Public Instance Methods
assignable_value_for(attr)
click to toggle source
# File lib/generators/katapult/model_specs/model_specs_generator.rb, line 26 def assignable_value_for(attr) attr.assignable_values.last end
create_model_spec()
click to toggle source
# File lib/generators/katapult/model_specs/model_specs_generator.rb, line 15 def create_model_spec template 'model_spec.rb', File.join('spec', 'models', "#{file_name}_spec.rb") end
specable_attrs()
click to toggle source
# File lib/generators/katapult/model_specs/model_specs_generator.rb, line 20 def specable_attrs model.attrs.select do |attr| attr.assignable_values_as_list? or !attr.default.nil? end end
unassignable_value_for(attr)
click to toggle source
Guess a value that is not assignable
# File lib/generators/katapult/model_specs/model_specs_generator.rb, line 31 def unassignable_value_for(attr) case attr.type when :integer attr.assignable_values.max + 1 when :string assignable_value_for(attr) + '-unassignable' else raise "Assignable values for :#{attr.type} attributes not supported" end end
Private Instance Methods
model()
click to toggle source
# File lib/generators/katapult/model_specs/model_specs_generator.rb, line 45 def model @element end