Sha256: 5722e57152bdacd52906414444e1a2c6be7013829c0d3f29e5fdf6d5dca1ba1c

Contents?: true

Size: 614 Bytes

Versions: 1

Compression:

Stored size: 614 Bytes

Contents

# -*- encoding : utf-8 -*-
module Pacto
  module Actors
    class JSONGenerator < Actor
      def build_request(contract, values = {})
        data = contract.request.to_hash
        data['uri'] = contract.request.uri(values)
        data['body'] = JSON::Generator.generate(data['schema'])
        data['method'] = contract.request.http_method
        Pacto::PactoRequest.new(data)
      end

      def build_response(contract, _values = {})
        data = contract.response.to_hash
        data['body'] = JSON::Generator.generate(data['schema'])
        Pacto::PactoResponse.new(data)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pacto-0.4.0.rc1 lib/pacto/actors/json_generator.rb