Class: StructureCompare::StructureComparison

Inherits:
Object
  • Object
show all
Defined in:
lib/structure_compare/structure_comparison.rb

Overview

TODO: Enumerable to support non-array enumerables

Instance Method Summary collapse

Constructor Details

#initialize(options = {}) ⇒ StructureComparison

Returns a new instance of StructureComparison.



4
5
6
7
8
9
10
11
# File 'lib/structure_compare/structure_comparison.rb', line 4

def initialize(options = {})
  @options = {
    strict_key_order: false,
    check_values: false,
    indifferent_access: false,
    float_tolerance_factor: 0
  }.merge(options)
end

Instance Method Details

#errorObject

TODO doc



28
29
30
# File 'lib/structure_compare/structure_comparison.rb', line 28

def error
  "root#{@path.join} : #{@error}"
end

#structures_are_equal?(expected, actual) ⇒ Boolean

TODO doc

Returns:

  • (Boolean)


14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/structure_compare/structure_comparison.rb', line 14

def structures_are_equal?(expected, actual)
  @path = []
  @error = nil

  begin
    check_structures_equal!(expected, actual)
  rescue StructuresNotEqualError => _error
    return false
  end

  return true
end