Sha256: 4ee1f6105ff9de52b0f88082949d319c6e4717e827f9047f93bd280a27617df2

Contents?: true

Size: 535 Bytes

Versions: 9

Compression:

Stored size: 535 Bytes

Contents

module FactoryGirl
  class Attribute
    # @api private
    class Dynamic < Attribute
      def initialize(name, ignored, block)
        super(name, ignored)
        @block = block
      end

      def to_proc
        block = @block

        -> {
          value = case block.arity
                  when 1, -1 then instance_exec(self, &block)
                  else instance_exec(&block)
                  end
          raise SequenceAbuseError if FactoryGirl::Sequence === value
          value
        }
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 5 rubygems

Version Path
ffactory_girl-4.8.2 lib/factory_girl/attribute/dynamic.rb
factory_girl-4.9.0 lib/factory_girl/attribute/dynamic.rb
ffactory_girl-4.8.1 lib/factory_girl/attribute/dynamic.rb
factory_girl-4.8.1 lib/factory_girl/attribute/dynamic.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/factory_girl-4.8.0/lib/factory_girl/attribute/dynamic.rb
factory_girl-4.8.0 lib/factory_girl/attribute/dynamic.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/factory_girl-4.7.0/lib/factory_girl/attribute/dynamic.rb
factory_girl-4.7.0 lib/factory_girl/attribute/dynamic.rb
opal-factory_girl-4.5.0.3 factory_girl/lib/factory_girl/attribute/dynamic.rb