Sha256: ed858f20e9da9711cb1f6281333d21745b7ca16b9b920c003698d7b6a41086bb

Contents?: true

Size: 763 Bytes

Versions: 11

Compression:

Stored size: 763 Bytes

Contents

module FactoryGirl
  class Proxy #:nodoc:
    class Build < Proxy #:nodoc:
      def initialize(klass)
        @instance = klass.new
      end

      def get(attribute)
        @instance.send(attribute)
      end

      def set(attribute, value)
        @instance.send(:"#{attribute}=", value)
      end

      def associate(name, factory_name, overrides)
        factory = FactoryGirl.factory_by_name(factory_name)
        set(name, factory.run(Proxy::Create, overrides))
      end

      def association(factory_name, overrides = {})
        factory = FactoryGirl.factory_by_name(factory_name)
        factory.run(Proxy::Create, overrides)
      end

      def result(to_create)
        run_callbacks(:after_build)
        @instance
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
factory_girl-2.0.4 lib/factory_girl/proxy/build.rb
factory_girl-2.0.3 lib/factory_girl/proxy/build.rb
factory_girl-2.0.2 lib/factory_girl/proxy/build.rb
factory_girl-2.0.1 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.rc4 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.rc3 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.rc2 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.rc1 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.beta5 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.beta4 lib/factory_girl/proxy/build.rb
factory_girl-2.0.0.beta3 lib/factory_girl/proxy/build.rb