Class: Pairwise::TestPair

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/pairwise/test_pair.rb

Instance Method Summary collapse

Constructor Details

#initialize(p1_position, p2_position, p1, p2) ⇒ TestPair

Returns a new instance of TestPair.



9
10
11
12
13
# File 'lib/pairwise/test_pair.rb', line 9

def initialize(p1_position, p2_position, p1, p2)
  @p1, @p2 = p1, p2
  @p1_position, @p2_position = p1_position, p2_position
  @pair = [@p1, @p2]
end

Instance Method Details

#covered_by?(test_pair) ⇒ Boolean

Returns:

  • (Boolean)


15
16
17
18
# File 'lib/pairwise/test_pair.rb', line 15

def covered_by?(test_pair)
  test_pair[@p1_position] == @p1 &&
  test_pair[@p2_position] == @p2
end

#create_input_listObject



20
21
22
23
24
25
26
# File 'lib/pairwise/test_pair.rb', line 20

def create_input_list
  new_input_list = Array.new(@p1_position){Builder::WILD_CARD}

  new_input_list[@p1_position] = @p1
  new_input_list[@p2_position] = @p2
  new_input_list
end

#replace_wild_card(input_list) ⇒ Object



28
29
30
31
# File 'lib/pairwise/test_pair.rb', line 28

def replace_wild_card(input_list)
  input_list[@p2_position] = @p2
  input_list
end

#replaceable_wild_card?(input_combinations) ⇒ Boolean

Returns:

  • (Boolean)


33
34
35
36
37
38
# File 'lib/pairwise/test_pair.rb', line 33

def replaceable_wild_card?(input_combinations)
  wild_card_list = input_combinations.map do |input_combination|
    input_combination[@p2_position] == Builder::WILD_CARD && input_combination[@p1_position] == @p1
  end
  wild_card_list.rindex(true)
end