Class: KnapsackPro::TestCaseMergers::BaseMerger

Inherits:
Object
  • Object
show all
Defined in:
lib/knapsack_pro/test_case_mergers/base_merger.rb

Direct Known Subclasses

RSpecMerger

Constant Summary collapse

ADAPTER_TO_MERGER_MAP =

values must be string to avoid circular dependency problem during loading files

{
  KnapsackPro::Adapters::RSpecAdapter => 'KnapsackPro::TestCaseMergers::RSpecMerger',
}

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(test_files) ⇒ BaseMerger

Returns a new instance of BaseMerger.



18
19
20
# File 'lib/knapsack_pro/test_case_mergers/base_merger.rb', line 18

def initialize(test_files)
  @test_files = test_files
end

Class Method Details

.call(adapter_class, test_files) ⇒ Object



11
12
13
14
15
16
# File 'lib/knapsack_pro/test_case_mergers/base_merger.rb', line 11

def self.call(adapter_class, test_files)
  merger_class =
    ADAPTER_TO_MERGER_MAP[adapter_class] ||
    raise("Test case merger does not exist for adapter_class: #{adapter_class}")
  Kernel.const_get(merger_class).new(test_files).call
end

Instance Method Details

#callObject

Raises:

  • (NotImplementedError)


22
23
24
# File 'lib/knapsack_pro/test_case_mergers/base_merger.rb', line 22

def call
  raise NotImplementedError
end