Class: Thoreau::Case::MultiClanCaseBuilder

Inherits:
Object
  • Object
show all
Includes:
Logging
Defined in:
lib/thoreau/case/multi_clan_case_builder.rb

Instance Method Summary collapse

Methods included from Logging

included, logger, #logger

Constructor Details

#initialize(test_clans:) ⇒ MultiClanCaseBuilder

Returns a new instance of MultiClanCaseBuilder.



7
8
9
10
11
# File 'lib/thoreau/case/multi_clan_case_builder.rb', line 7

def initialize(test_clans:)
  @case_builders = test_clans.map do |test_clan|
    CaseBuilder.new test_clan: test_clan
  end
end

Instance Method Details

#any_focused?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/thoreau/case/multi_clan_case_builder.rb', line 13

def any_focused?
  @case_builders.any? &:any_focused?
end

#build_test_cases!Object



22
23
24
# File 'lib/thoreau/case/multi_clan_case_builder.rb', line 22

def build_test_cases!
  @case_builders.flat_map(&:build_test_cases!)
end

#skipped_countObject



17
18
19
20
# File 'lib/thoreau/case/multi_clan_case_builder.rb', line 17

def skipped_count
  return 0 unless any_focused?
  @case_builders.map(&:skipped_count).reduce(&:+)
end