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.



16
17
18
# File 'lib/knapsack_pro/test_case_mergers/base_merger.rb', line 16

def initialize(test_files)
  @test_files = test_files
end

Class Method Details

.call(adapter_class, test_files) ⇒ Object



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

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)


20
21
22
# File 'lib/knapsack_pro/test_case_mergers/base_merger.rb', line 20

def call
  raise NotImplementedError
end