Class: Schema::Fixtures::Assignment
- Inherits:
-
Object
- Object
- Schema::Fixtures::Assignment
- Includes:
- Initializer, TestBench::Fixture
- Defined in:
- lib/schema/fixtures/assignment.rb
Class Method Summary collapse
Instance Method Summary collapse
- #attributes_context_name ⇒ Object
- #call ⇒ Object
- #call! ⇒ Object
- #print_title_context? ⇒ Boolean
- #schema_class ⇒ Object
- #title_context_name ⇒ Object
Class Method Details
.build(compare, attribute_names = nil, print_title_context: nil, title_context_name: nil, attributes_context_name: nil) ⇒ Object
28 29 30 31 32 |
# File 'lib/schema/fixtures/assignment.rb', line 28 def self.build(compare, attribute_names=nil, print_title_context: nil, title_context_name: nil, attributes_context_name: nil) control = compare.class.new comparison = Schema::Compare.(control, compare, attribute_names) new(comparison, print_title_context, title_context_name, attributes_context_name) end |
Instance Method Details
#attributes_context_name ⇒ Object
18 19 20 |
# File 'lib/schema/fixtures/assignment.rb', line 18 def attributes_context_name @attributes_context_name ||= 'Attributes' end |
#call ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/schema/fixtures/assignment.rb', line 34 def call if print_title_context? context "#{title_context_name}" do detail "Class: #{schema_class.name}" call! end else call! end end |
#call! ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/schema/fixtures/assignment.rb', line 46 def call! context attributes_context_name do comparison.entries.each do |entry| default_attribute_value = entry.control_value attribute_value = entry.compare_value test "#{entry.compare_name}" do detail "Default Value: #{default_attribute_value.pretty_inspect.chomp}" detail "Assigned Value: #{attribute_value.pretty_inspect.chomp}" refute(attribute_value == default_attribute_value) end end end end |
#print_title_context? ⇒ Boolean
7 8 9 10 11 12 |
# File 'lib/schema/fixtures/assignment.rb', line 7 def print_title_context? if @print_title_context.nil? @print_title_context = true end @print_title_context end |
#schema_class ⇒ Object
22 23 24 |
# File 'lib/schema/fixtures/assignment.rb', line 22 def schema_class comparison.control_class end |
#title_context_name ⇒ Object
14 15 16 |
# File 'lib/schema/fixtures/assignment.rb', line 14 def title_context_name @title_context_name ||= "Schema Assignment: #{comparison.compare_class.type}" end |