class AllureRspec::SuiteLabels
Suite label generator
Attributes
Public Class Methods
Source
# File lib/allure_rspec/suite_labels.rb, line 9 def initialize(example_group) @example_group = example_group end
Public Instance Methods
Source
# File lib/allure_rspec/suite_labels.rb, line 15 def fetch parents = example_group.parent_groups.map do |group| group.description.empty? ? "Anonymous" : group.description end labels = [] labels << Allure::ResultUtils.suite_label(suite(parents)) labels << Allure::ResultUtils.parent_suite_label(parent_suite(parents)) if parent_suite(parents) labels << Allure::ResultUtils.sub_suite_label(sub_suites(parents)) if sub_suites(parents) labels end
Get test suite labels @return [Array<Allure::Label>]
Private Instance Methods
Source
# File lib/allure_rspec/suite_labels.rb, line 40 def parent_suite(parents) parents.length > 1 ? parents.last : nil end
@param [Array<String>] parents @return [String]
Source
# File lib/allure_rspec/suite_labels.rb, line 46 def sub_suites(parents) parents.length > 2 ? parents[0..-3].join(" > ") : nil end
@param [Array<String>] parents @return [String]
Source
# File lib/allure_rspec/suite_labels.rb, line 34 def suite(parents) parents.length == 1 ? parents.last : parents[-2] end
@param [Array<String>] parents @return [String]