Class: JsonDeepCompare::NodeComparison::Difference
- Inherits:
-
Object
- Object
- JsonDeepCompare::NodeComparison::Difference
- Defined in:
- lib/json-deep-compare/node_comparison.rb
Instance Attribute Summary collapse
-
#selector ⇒ Object
readonly
Returns the value of attribute selector.
Instance Method Summary collapse
-
#initialize(selector, msg_template, variables) ⇒ Difference
constructor
A new instance of Difference.
- #message ⇒ Object
- #reverse ⇒ Object
Constructor Details
#initialize(selector, msg_template, variables) ⇒ Difference
Returns a new instance of Difference.
172 173 174 175 |
# File 'lib/json-deep-compare/node_comparison.rb', line 172 def initialize(selector, msg_template, variables) @selector, @msg_template, @variables = selector, msg_template, variables end |
Instance Attribute Details
#selector ⇒ Object (readonly)
Returns the value of attribute selector.
170 171 172 |
# File 'lib/json-deep-compare/node_comparison.rb', line 170 def selector @selector end |
Instance Method Details
#message ⇒ Object
177 178 179 180 181 182 183 |
# File 'lib/json-deep-compare/node_comparison.rb', line 177 def msg = @msg_template @variables.each do |name, value| msg = msg.gsub(/#{name.inspect}/, value) end "#{@selector.inspect} #{msg}" end |
#reverse ⇒ Object
185 186 187 188 189 190 191 |
# File 'lib/json-deep-compare/node_comparison.rb', line 185 def reverse reversed_variables = {lval: @variables[:rval], rval: @variables[:lval]} (@variables.keys - [:lval, :rval]).each do |other_var| reversed_variables[other_var] = @variables[other_var] end Difference.new(@selector, @msg_template, reversed_variables) end |