Sha256: 07ea38919bf12cb76fe74f8021ecb8376d29faf523032362fbf41a91213c085d

Contents?: true

Size: 524 Bytes

Versions: 2

Compression:

Stored size: 524 Bytes

Contents

require 'randexp'

module Pact
  module Reification

    def self.from_term(term)
      case term
      when Pact::Term, Regexp, Pact::SomethingLike
        term.generate
      when Hash
        term.inject({}) do |mem, (key,term)|
          mem[key] = from_term(term)
        mem
        end
      when Array
        term.inject([]) do |mem, term|
          mem << from_term(term)
          mem
        end
      when Pact::Request::Base
        from_term(term.to_hash)
      else
        term
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
pact-support-0.0.1 lib/pact/reification.rb
pact-1.3.3 lib/pact/reification.rb