zendesk2 1.2.4 → 1.2.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/zendesk2.rb +10 -9
- data/lib/zendesk2/client.rb +1 -0
- data/lib/zendesk2/client/mock.rb +1 -1
- data/lib/zendesk2/client/real.rb +1 -1
- data/lib/zendesk2/client/requests/get_user.rb +2 -2
- data/lib/zendesk2/client/requests/get_user_identities.rb +3 -3
- data/lib/zendesk2/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 281e65de8d7fc12c868312a9d3544dec44a584f7
|
4
|
+
data.tar.gz: 020d4a2cedceba691113f3bf5a18137a5c8df58d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f5a5ecc71d76557bc9e4dd70f64da853c70953f2a1040e87c72371f7fb005e3c7f56cac5537802e9a205103f42d994fa21cfaf5480b3cf7405f9881351c98f07
|
7
|
+
data.tar.gz: 877a512b7b15e43c6c9c882a1e063792c11a638aeea00bceb060340a922cff1aa92e0a208a6abb7c6a584b1016dc546340711a2e5ad83498d8ece93c584c7c08
|
data/lib/zendesk2.rb
CHANGED
@@ -12,7 +12,7 @@ require 'forwardable'
|
|
12
12
|
require 'logger'
|
13
13
|
require 'time'
|
14
14
|
require 'yaml'
|
15
|
-
require '
|
15
|
+
require 'securerandom'
|
16
16
|
|
17
17
|
module Zendesk2
|
18
18
|
def self.defaults
|
@@ -24,20 +24,21 @@ module Zendesk2
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def self.paging_parameters(options={})
|
27
|
-
if url = options["url"]
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
27
|
+
params = if url = options["url"]
|
28
|
+
Addressable::URI.parse(url).query_values
|
29
|
+
else
|
30
|
+
options
|
31
|
+
end
|
32
|
+
|
33
|
+
Cistern::Hash.slice(params, "page", "per_page")
|
33
34
|
end
|
34
35
|
|
35
36
|
def self.uuid
|
36
|
-
|
37
|
+
SecureRandom.uuid
|
37
38
|
end
|
38
39
|
|
39
40
|
def self.stringify_keys(hash)
|
40
|
-
hash.inject({}){|r,(k,v)| r.merge(k.to_s => v)}
|
41
|
+
hash.inject({}) { |r,(k,v)| r.merge(k.to_s => v) }
|
41
42
|
end
|
42
43
|
|
43
44
|
def self.blank?(string)
|
data/lib/zendesk2/client.rb
CHANGED
@@ -21,6 +21,7 @@ class Zendesk2::Client < Cistern::Service
|
|
21
21
|
module Shared
|
22
22
|
def require_parameters(_params, *requirements)
|
23
23
|
params = Cistern::Hash.stringify_keys(_params)
|
24
|
+
params.reject! { |_,v| Zendesk2.blank?(v) }
|
24
25
|
|
25
26
|
if (missing = requirements - params.keys).any?
|
26
27
|
raise ArgumentError, "missing parameters: #{missing.join(", ")}"
|
data/lib/zendesk2/client/mock.rb
CHANGED
@@ -42,7 +42,7 @@ class Zendesk2::Client < Cistern::Service
|
|
42
42
|
|
43
43
|
def initialize(options={})
|
44
44
|
@url = options[:url]
|
45
|
-
@path = ::URI.parse(url).path
|
45
|
+
@path = Addressable::URI.parse(url).path
|
46
46
|
@username, @password = options[:username], options[:password]
|
47
47
|
@token = options[:token]
|
48
48
|
@jwt_token = options[:jwt_token]
|
data/lib/zendesk2/client/real.rb
CHANGED
@@ -12,9 +12,9 @@ class Zendesk2::Client
|
|
12
12
|
|
13
13
|
class Mock
|
14
14
|
def get_user(params={})
|
15
|
-
id
|
15
|
+
id = require_parameters(params, "id").to_i
|
16
16
|
|
17
|
-
identities = self.data[:identities].values.select{|i| i["user_id"] == id}
|
17
|
+
identities = self.data[:identities].values.select { |i| i["user_id"] == id }
|
18
18
|
identity = identities.find { |i| i["type"] == "email" && i["primary"] } || identities.find { |i| i["type"] == "email" }
|
19
19
|
|
20
20
|
# @todo what happens if no identity?
|
@@ -5,9 +5,9 @@ class Zendesk2::Client
|
|
5
5
|
page_params = Zendesk2.paging_parameters(params)
|
6
6
|
|
7
7
|
request(
|
8
|
-
:params
|
9
|
-
:method
|
10
|
-
:path
|
8
|
+
:params => page_params,
|
9
|
+
:method => :get,
|
10
|
+
:path => "/users/#{user_id}/identities.json",
|
11
11
|
)
|
12
12
|
end
|
13
13
|
end # Real
|
data/lib/zendesk2/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: zendesk2
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josh Lane
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-10-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|