class RSpec::Core::Ordering::Registry

@private Stores the different ordering strategies.

Public Class Methods

# File rspec-core/lib/rspec/core/ordering.rb, line 108
def initialize(configuration)
  @configuration = configuration
  @strategies    = {}

  random = Random.new(configuration)
  register(:random, random)
  register(:recently_modified, RecentlyModified.new)
  register(:defined, Identity.new)

  # The default global ordering is --random.
  register(:global, random)
end

Public Instance Methods

# File rspec-core/lib/rspec/core/ordering.rb, line 121
def fetch(name, &fallback)
  @strategies.fetch(name, &fallback)
end
# File rspec-core/lib/rspec/core/ordering.rb, line 125
def has_strategy?(name)
  @strategies.key?(name)
end
# File rspec-core/lib/rspec/core/ordering.rb, line 129
def register(sym, strategy)
  @strategies[sym] = strategy
end
# File rspec-core/lib/rspec/core/ordering.rb, line 133
def used_random_seed?
  @strategies[:random].used?
end