Sha256: a2107e68668799b0a1a2ab9537141324596b4951c3ce877ac810f4791dc20d28

Contents?: true

Size: 720 Bytes

Versions: 4

Compression:

Stored size: 720 Bytes

Contents

require 'pact/shared/active_support_support'

module Pact
  class QueryString

    include ActiveSupportSupport
    include Pact::Matchers

    def initialize query
      @query = query.nil? ? query : query.dup
    end

    def as_json opts = {}
      @query
    end

    def to_json opts = {}
      as_json(opts).to_json(opts)
    end

    def eql? other
      self == other
    end

    def == other
      QueryString === other && other.query == query
    end

    def difference(other)
      diff(query, other.query)
    end

    def query
      @query
    end

    def to_s
      @query
    end

    def empty?
      @query && @query.empty?
    end

    # Naughty...
    def nil?
      @query.nil?
    end

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
pact-support-1.5.0 lib/pact/consumer_contract/query_string.rb
pact-support-1.4.0 lib/pact/consumer_contract/query_string.rb
pact-support-1.3.1 lib/pact/consumer_contract/query_string.rb
pact-support-1.3.0 lib/pact/consumer_contract/query_string.rb