class ParallelTests::Cucumber::Scenarios
Public Class Methods
all(files, options={})
click to toggle source
# File lib/parallel_tests/cucumber/scenarios.rb, line 11 def all(files, options={}) tags = [] tags.concat options[:ignore_tag_pattern].to_s.split(/\s*,\s*/).map {|tag| "~#{tag}" } tags.concat options[:test_options].to_s.scan(/(?:-t|--tags) (~?@[\w,~@]+)/).flatten split_into_scenarios files, tags.uniq end
Private Class Methods
split_into_scenarios(files, tags=[])
click to toggle source
# File lib/parallel_tests/cucumber/scenarios.rb, line 20 def split_into_scenarios(files, tags=[]) tag_expression = ::Gherkin::TagExpression.new(tags) scenario_line_logger = ParallelTests::Cucumber::Formatters::ScenarioLineLogger.new(tag_expression) loader = ::Cucumber::Runtime::FeaturesLoader.new(files, [], tag_expression) loader.features.each do |feature| feature.accept(scenario_line_logger) end scenario_line_logger.scenarios end