class Cucumber::Filters::Randomizer

 Batches up all test cases, randomizes them, and then sends them on

Attributes

seed[R]

Public Class Methods

new(seed, receiver=nil) click to toggle source
# File lib/cucumber/filters/randomizer.rb, line 6
def initialize(seed, receiver=nil)
  @receiver = receiver
  @test_cases = []
  @seed = seed
end

Public Instance Methods

done() click to toggle source
# File lib/cucumber/filters/randomizer.rb, line 17
def done
  shuffled_test_cases.each do |test_case|
    test_case.describe_to(@receiver)
  end
  @receiver.done
  self
end
test_case(test_case) click to toggle source
# File lib/cucumber/filters/randomizer.rb, line 12
def test_case(test_case)
  @test_cases << test_case
  self
end
with_receiver(receiver) click to toggle source
# File lib/cucumber/filters/randomizer.rb, line 25
def with_receiver(receiver)
  self.class.new(@seed, receiver)
end

Private Instance Methods

shuffled_test_cases() click to toggle source
# File lib/cucumber/filters/randomizer.rb, line 31
def shuffled_test_cases
  @test_cases.shuffle(random: Random.new(seed))
end