class FactoryBot::Registry

Attributes

name[R]

Public Class Methods

new(name) click to toggle source
# File lib/factory_bot/registry.rb, line 7
def initialize(name)
  @name  = name
  @items = Decorator::ClassKeyHash.new({})
end

Public Instance Methods

[](name)
Alias for: find
clear() click to toggle source
# File lib/factory_bot/registry.rb, line 12
def clear
  @items.clear
end
each(&block) click to toggle source
# File lib/factory_bot/registry.rb, line 16
def each(&block)
  @items.values.uniq.each(&block)
end
find(name) click to toggle source
# File lib/factory_bot/registry.rb, line 20
def find(name)
  if registered?(name)
    @items[name]
  else
    raise ArgumentError, "#{@name} not registered: #{name}"
  end
end
Also aliased as: []
register(name, item) click to toggle source
# File lib/factory_bot/registry.rb, line 30
def register(name, item)
  @items[name] = item
end
registered?(name) click to toggle source
# File lib/factory_bot/registry.rb, line 34
def registered?(name)
  @items.key?(name)
end