Sha256: f49807ebce9c3ceb31b4d8200530c0d766f3acbbd1dbeaee5fb22364cebfe358

Contents?: true

Size: 608 Bytes

Versions: 58

Compression:

Stored size: 608 Bytes

Contents

module FactoryGirl
  class Registry
    include Enumerable

    attr_reader :name

    def initialize(name)
      @name  = name
      @items = Decorator::ClassKeyHash.new({})
    end

    def clear
      @items.clear
    end

    def each(&block)
      @items.values.uniq.each(&block)
    end

    def find(name)
      if registered?(name)
        @items[name]
      else
        raise ArgumentError, "#{@name} not registered: #{name}"
      end
    end

    alias :[] :find

    def register(name, item)
      @items[name] = item
    end

    def registered?(name)
      @items.key?(name)
    end
  end
end

Version data entries

58 entries across 46 versions & 11 rubygems

Version Path
ffactory_girl-4.8.2 lib/factory_girl/registry.rb
factory_girl-4.9.0 lib/factory_girl/registry.rb
ffactory_girl-4.8.1 lib/factory_girl/registry.rb
factory_girl-4.8.1 lib/factory_girl/registry.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/factory_girl-4.8.0/lib/factory_girl/registry.rb
factory_girl-4.8.0 lib/factory_girl/registry.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/factory_girl-4.7.0/lib/factory_girl/registry.rb
factory_girl-4.7.0 lib/factory_girl/registry.rb
opal-factory_girl-4.5.0.3 factory_girl/lib/factory_girl/registry.rb
sc_core-0.0.7 test/dummy/vendor/bundle/ruby/2.2.0/gems/factory_girl-4.5.0/lib/factory_girl/registry.rb
solidus_backend-1.0.0.pre3 vendor/bundle/gems/factory_girl-4.5.0/lib/factory_girl/registry.rb
solidus_backend-1.0.0.pre2 vendor/bundle/gems/factory_girl-4.5.0/lib/factory_girl/registry.rb
solidus_backend-1.0.0.pre vendor/bundle/gems/factory_girl-4.5.0/lib/factory_girl/registry.rb
apl-library-0.0.90 vendor/bundle/ruby/1.9.1/gems/factory_girl-4.4.0/lib/factory_girl/registry.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/registry.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/2.1.0/gems/factory_girl-4.4.0/lib/factory_girl/registry.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/1.9.1/gems/factory_girl-4.4.0/lib/factory_girl/registry.rb
factory_girl-4.5.0 lib/factory_girl/registry.rb
factory_girl-4.4.0 lib/factory_girl/registry.rb
factory_girl-4.3.0 lib/factory_girl/registry.rb