Class: SuperDiff::OperationalSequencer

Inherits:
Object
  • Object
show all
Defined in:
lib/super_diff/operational_sequencer.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(expected:, actual:, extra_classes: [], extra_diff_formatter_classes: []) ⇒ OperationalSequencer

Returns a new instance of OperationalSequencer.



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/super_diff/operational_sequencer.rb', line 7

def initialize(
  expected:,
  actual:,
  extra_classes: [],
  extra_diff_formatter_classes: []
)
  @expected = expected
  @actual = actual
  @extra_classes = extra_classes
  @extra_diff_formatter_classes = extra_diff_formatter_classes
end

Class Method Details

.call(*args) ⇒ Object



3
4
5
# File 'lib/super_diff/operational_sequencer.rb', line 3

def self.call(*args)
  new(*args).call
end

Instance Method Details

#callObject



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/super_diff/operational_sequencer.rb', line 19

def call
  if resolved_class
    resolved_class.call(
      expected: expected,
      actual: actual,
      extra_operational_sequencer_classes: extra_classes,
      extra_diff_formatter_classes: extra_diff_formatter_classes,
    )
  else
    raise NoOperationalSequencerAvailableError.create(expected, actual)
  end
end