zendesk2 1.7.1 → 1.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 91c3561bd5e27a06d4f3a8171326ccc290c909ee
4
- data.tar.gz: bcb598854f6b9da429046ea18749df1d570ec7ef
3
+ metadata.gz: 7db3f34cbbdf52fdf9a7ccbe8f4f1850ba6f91ac
4
+ data.tar.gz: b06f3c2f223f5a8ea1f4815e2130112bb6e6cd3e
5
5
  SHA512:
6
- metadata.gz: c19574854d937199283234cef6c31e80560262ac76352cf2f38c8f4d70dcdab11b80835529d153df1a4cc7b81a21637655a73391a1f1d297f3eee84557b6a5ff
7
- data.tar.gz: 860b4bd84b9aa8969e861b0eafa548e12d03b26709941b67609fb79b312c36cb487b6cffc6f54faf7aff04e7baa7d955fe64256043fccacc779adffa486764e7
6
+ metadata.gz: 7b4d01b853ec1356f2a12b92b6f3c7060f3c107a813e936ff99efcd8f4440f7a18d06a1ac90b0caffa6a5965219eadeaea9a026abd3d20f2fc3bd0f40f83f4af
7
+ data.tar.gz: 6b7345a170e99e6c335b7cfacec1551e2051a56d5c0a5caa967d9a197ea579601c503a9fb683499c912220e5aec186d0da892df9e49b6ca7c8aeeb76e6a116ff
@@ -1,4 +1,4 @@
1
- class Zendesk2::Client < Cistern::Service
1
+ class Zendesk2::Client
2
2
  class Mock
3
3
 
4
4
  attr_reader :username, :url, :token, :jwt_token
@@ -1,4 +1,6 @@
1
1
  class Zendesk2::Client::Model
2
+ include Cistern::Model
3
+
2
4
  attr_accessor :errors
3
5
 
4
6
  # @abstract override in subclass
@@ -56,6 +56,8 @@ class Zendesk2::Client::User < Zendesk2::Client::Model
56
56
  attribute :updated_at, type: :time
57
57
  # @return [String] The API url of this user
58
58
  attribute :url, type: :string
59
+ # @return [Hash] Custom fields for the user
60
+ attribute :user_fields
59
61
  # @return [Boolean] Zendesk has verified that this user is who he says he is
60
62
  attribute :verified, type: :boolean
61
63
 
@@ -1,4 +1,4 @@
1
- class Zendesk2::Client < Cistern::Service
1
+ class Zendesk2::Client
2
2
  class Real
3
3
 
4
4
  attr_accessor :username, :url, :token, :logger, :jwt_token, :last_request
@@ -4,7 +4,7 @@ class Zendesk2::Client::CreateUser < Zendesk2::Client::Request
4
4
  request_body { |r| { "user" => r.user_params } }
5
5
 
6
6
  def self.accepted_attributes
7
- %w[name email organization_id external_id alias verified locate_id time_zone phone signature details notes role custom_role_id moderator ticket_restriction only_private_comments]
7
+ %w[name email organization_id external_id alias verified locate_id time_zone phone signature details notes role custom_role_id moderator ticket_restriction only_private_comments user_fields]
8
8
  end
9
9
 
10
10
  def user_params
@@ -25,6 +25,7 @@ class Zendesk2::Client::CreateUser < Zendesk2::Client::Request
25
25
  "url" => url_for("/users/#{user_id}.json"),
26
26
  "created_at" => Time.now.iso8601,
27
27
  "updated_at" => Time.now.iso8601,
28
+ "role" => "end-user",
28
29
  "active" => true,
29
30
  }.merge(user_params)
30
31
 
@@ -1,4 +1,6 @@
1
- class Zendesk2::Client < Cistern::Service
1
+ class Zendesk2::Client
2
+ include Cistern::Client
3
+
2
4
  USER_AGENT = "Ruby/#{RUBY_VERSION} (#{RUBY_PLATFORM}; #{RUBY_ENGINE}) Zendesk2/#{Zendesk2::VERSION} Faraday/#{Faraday::VERSION}".freeze
3
5
 
4
6
  recognizes :url, :logger, :adapter, :username, :password, :token, :jwt_token
@@ -1,3 +1,3 @@
1
1
  module Zendesk2
2
- VERSION = "1.7.1"
2
+ VERSION = "1.7.2"
3
3
  end
data/spec/users_spec.rb CHANGED
@@ -168,6 +168,14 @@ describe "users" do
168
168
  expect(initial_identity.reload.primary).to be_falsey
169
169
  end
170
170
 
171
+ it "persists #user_fields" do
172
+ user_fields = { "A" => 1 }
173
+
174
+ fields_user = client.users.create!(email: mock_email, name: mock_uuid, user_fields: user_fields)
175
+ expect(fields_user.user_fields).to eq(user_fields)
176
+ expect(fields_user.reload.user_fields).to eq(user_fields)
177
+ end
178
+
171
179
  it "should hate non-unique emails" do
172
180
  email = mock_email
173
181
  client.users.create!(email: email, name: mock_uuid)
data/zendesk2.gemspec CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |gem|
16
16
  gem.require_paths = ["lib"]
17
17
  gem.version = Zendesk2::VERSION
18
18
 
19
- gem.add_dependency "cistern", "~> 2.0"
19
+ gem.add_dependency "cistern", "~> 2.2"
20
20
  gem.add_dependency "faraday", "~> 0.9"
21
21
  gem.add_dependency "faraday_middleware", "~> 0.9"
22
22
  gem.add_dependency "jwt", "~> 1.0"
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.7.1
4
+ version: 1.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josh Lane
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-10 00:00:00.000000000 Z
11
+ date: 2015-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cistern
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.0'
19
+ version: '2.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '2.0'
26
+ version: '2.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: faraday
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -288,7 +288,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
288
288
  version: '0'
289
289
  requirements: []
290
290
  rubyforge_project:
291
- rubygems_version: 2.4.5
291
+ rubygems_version: 2.4.5.1
292
292
  signing_key:
293
293
  specification_version: 4
294
294
  summary: Zendesk V2 API client