Sha256: 542da2fa09995fb70951c75ddc9fda43b7bb7d412d27ad5603614d44a005dd2c

Contents?: true

Size: 632 Bytes

Versions: 8

Compression:

Stored size: 632 Bytes

Contents

class Zendesk2::Client
  class Real
    def search(query)
      term = query.map{|k,v| "#{k}:#{v}"}.join(" ")
      request(
        :method => :get,
        :params => {query: term},
        :path   => "/search.json",
      )
    end
  end # Real

  class Mock
    def search(query)
      type       = query.delete("type")
      collection = type.nil? ? self.data.values : self.data["#{type}s".to_sym]

      results = collection.select{|k,v| query.all?{|term, condition| v[term.to_s] == condition}}.values

      response(
        :path => "/search.json",
        :body => {"results" => results},
      )
    end
  end # Mock
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
zendesk2-0.0.13 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.12 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.11 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.10 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.9 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.8 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.7 lib/zendesk2/client/requests/search.rb
zendesk2-0.0.6 lib/zendesk2/client/requests/search.rb