Class: JsonDeepCompare::NodeComparison::Difference
- Inherits:
-
Object
- Object
- JsonDeepCompare::NodeComparison::Difference
- Defined in:
- lib/json-deep-compare.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.
171 172 173 174 |
# File 'lib/json-deep-compare.rb', line 171 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.
169 170 171 |
# File 'lib/json-deep-compare.rb', line 169 def selector @selector end |
Instance Method Details
#message ⇒ Object
176 177 178 179 180 181 182 |
# File 'lib/json-deep-compare.rb', line 176 def msg = @msg_template @variables.each do |name, value| msg = msg.gsub(/#{name.inspect}/, value) end "#{@selector.inspect} #{msg}" end |
#reverse ⇒ Object
184 185 186 187 188 189 190 |
# File 'lib/json-deep-compare.rb', line 184 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 |