Sha256: 0a09092099fc552d3d145afc39263aaec09b729e7702e6714d13eebe1838da26

Contents?: true

Size: 696 Bytes

Versions: 1

Compression:

Stored size: 696 Bytes

Contents

# typed: strict

require_relative "handles_dry_call/fulfills_stubbing"
require_relative "handles_dry_call/logs_call"
require_relative "handles_dry_call/validates_arguments"

module Mocktail
  class HandlesDryCall
    extend T::Sig

    sig { void }
    def initialize
      @validates_arguments = T.let(ValidatesArguments.new, ValidatesArguments)
      @logs_call = T.let(LogsCall.new, LogsCall)
      @fulfills_stubbing = T.let(FulfillsStubbing.new, FulfillsStubbing)
    end

    sig { params(dry_call: Call).returns(T.anything) }
    def handle(dry_call)
      @validates_arguments.validate(dry_call)
      @logs_call.log(dry_call)
      @fulfills_stubbing.fulfill(dry_call)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mocktail-2.0.0 lib/mocktail/sorbet/mocktail/handles_dry_call.rb