Sha256: ba7422dac2c8beb140fc7957d028e18070bc55b81f8370f77995a684b669012e

Contents?: true

Size: 582 Bytes

Versions: 8

Compression:

Stored size: 582 Bytes

Contents

module FactoryBot
  class Evaluation
    def initialize(evaluator, attribute_assigner, to_create, observer)
      @evaluator = evaluator
      @attribute_assigner = attribute_assigner
      @to_create = to_create
      @observer = observer
    end

    delegate :object, :hash, to: :@attribute_assigner

    def create(result_instance)
      case @to_create.arity
      when 2 then @to_create[result_instance, @evaluator]
      else @to_create[result_instance]
      end
    end

    def notify(name, result_instance)
      @observer.update(name, result_instance)
    end
  end
end

Version data entries

8 entries across 7 versions & 3 rubygems

Version Path
factory_bot-6.5.1 lib/factory_bot/evaluation.rb
trusty-cms-7.0.9.1 vendor/bundle/ruby/3.1.0/gems/factory_bot-6.5.0/lib/factory_bot/evaluation.rb
trusty-cms-7.0.9.1 vendor/bundle/ruby/3.3.0/gems/factory_bot-6.5.0/lib/factory_bot/evaluation.rb
factory_bot-6.5.0 lib/factory_bot/evaluation.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/factory_bot-6.4.6/lib/factory_bot/evaluation.rb
factory_bot-6.4.6 lib/factory_bot/evaluation.rb
factory_bot-6.4.5 lib/factory_bot/evaluation.rb
factory_bot-6.4.4 lib/factory_bot/evaluation.rb