zendesk2 1.3.3 → 1.4.0
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 +4 -4
- data/lib/zendesk2/paged_collection.rb +18 -0
- data/lib/zendesk2/version.rb +1 -1
- data/spec/lib/paged_collection_spec.rb +32 -0
- data/spec/organizations_spec.rb +10 -0
- data/zendesk2.gemspec +4 -4
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea32a42fea79611932cae7f6a9a7c5e36f857fe4
|
4
|
+
data.tar.gz: 9911f329d17548596da4d41e3e3bb257016e2637
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5908502c65ce8cc6fd8a21a6b5024a4f590af73dcf3286fe1eb5e3469e94266e536976699ba4613a9ce60679574f4fe52924ad27c1f2d376a7d1524e86ef8f14
|
7
|
+
data.tar.gz: 0578599e099c25f33b0dd43d1a4af95aeb6409ddf35da14f343577919502a289a2a4936118aa39b195bdba044649d1b713c8a99ca2a1c4e396c7e30bf17595a7
|
@@ -20,6 +20,24 @@ class Zendesk2::PagedCollection < Zendesk2::Collection
|
|
20
20
|
page
|
21
21
|
end
|
22
22
|
|
23
|
+
def each_page
|
24
|
+
return to_enum(:each_page) unless block_given?
|
25
|
+
page = self
|
26
|
+
while page
|
27
|
+
yield page
|
28
|
+
page = page.next_page
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def each_entry
|
33
|
+
return to_enum(:each_entry) unless block_given?
|
34
|
+
page = self
|
35
|
+
while page
|
36
|
+
page.records.each { |r| yield r }
|
37
|
+
page = page.next_page
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
23
41
|
def next_page
|
24
42
|
new_page.all("url" => next_page_link) if next_page_link
|
25
43
|
end
|
data/lib/zendesk2/version.rb
CHANGED
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Zendesk2::PagedCollection, :mock_only do
|
4
|
+
let!(:client) { create_client }
|
5
|
+
|
6
|
+
let!(:records) { 333.times.map { client.organizations.create(name: mock_uuid) } }
|
7
|
+
|
8
|
+
context "#each_page" do
|
9
|
+
it "should enumerate pages" do
|
10
|
+
found_records = []
|
11
|
+
client.organizations.all.each_page { |page| page.each { |entry| found_records << entry } }
|
12
|
+
|
13
|
+
expect(records).to match_array(found_records)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
context "#each_entry" do
|
18
|
+
it "should enumerate entries" do
|
19
|
+
found_records = []
|
20
|
+
client.organizations.all.each_entry { |entry| found_records << entry }
|
21
|
+
|
22
|
+
expect(records).to match_array(found_records)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should chain enumerables" do
|
26
|
+
target = records.sample
|
27
|
+
found = client.organizations.all.each_entry.find { |entry| entry.id == target.id }
|
28
|
+
|
29
|
+
expect(target).to eq(found)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
data/spec/organizations_spec.rb
CHANGED
@@ -33,6 +33,16 @@ describe "organizations" do
|
|
33
33
|
expect(model.errors).to eq({"name" => ["Name: has already been taken"]})
|
34
34
|
end
|
35
35
|
|
36
|
+
it "should update name" do
|
37
|
+
old_name = organization.name
|
38
|
+
proxy = organization.dup
|
39
|
+
new_name = proxy.name = mock_uuid
|
40
|
+
|
41
|
+
expect {
|
42
|
+
proxy.save!
|
43
|
+
}.to change { organization.reload.name }.from(old_name).to(new_name)
|
44
|
+
end
|
45
|
+
|
36
46
|
it "should be able to find organizations by external id" do
|
37
47
|
external_id = organization.external_id = mock_uuid
|
38
48
|
organization.save!
|
data/zendesk2.gemspec
CHANGED
@@ -16,9 +16,9 @@ Gem::Specification.new do |gem|
|
|
16
16
|
gem.require_paths = ["lib"]
|
17
17
|
gem.version = Zendesk2::VERSION
|
18
18
|
|
19
|
-
gem.add_dependency "addressable",
|
20
|
-
gem.add_dependency "cistern",
|
21
|
-
gem.add_dependency "faraday",
|
19
|
+
gem.add_dependency "addressable", "~> 2.2"
|
20
|
+
gem.add_dependency "cistern", "~> 0.11"
|
21
|
+
gem.add_dependency "faraday", "~> 0.9"
|
22
22
|
gem.add_dependency "faraday_middleware", "~> 0.9"
|
23
|
-
gem.add_dependency "jwt",
|
23
|
+
gem.add_dependency "jwt", "~> 1.0"
|
24
24
|
end
|
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.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josh Lane
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -250,6 +250,7 @@ files:
|
|
250
250
|
- spec/help_center/articles_spec.rb
|
251
251
|
- spec/help_center/categories_spec.rb
|
252
252
|
- spec/help_center/sections_spec.rb
|
253
|
+
- spec/lib/paged_collection_spec.rb
|
253
254
|
- spec/memberships_spec.rb
|
254
255
|
- spec/organizations_spec.rb
|
255
256
|
- spec/shared/zendesk_resource.rb
|
@@ -284,7 +285,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
284
285
|
version: '0'
|
285
286
|
requirements: []
|
286
287
|
rubyforge_project:
|
287
|
-
rubygems_version: 2.
|
288
|
+
rubygems_version: 2.4.5
|
288
289
|
signing_key:
|
289
290
|
specification_version: 4
|
290
291
|
summary: Zendesk V2 API client
|
@@ -295,6 +296,7 @@ test_files:
|
|
295
296
|
- spec/help_center/articles_spec.rb
|
296
297
|
- spec/help_center/categories_spec.rb
|
297
298
|
- spec/help_center/sections_spec.rb
|
299
|
+
- spec/lib/paged_collection_spec.rb
|
298
300
|
- spec/memberships_spec.rb
|
299
301
|
- spec/organizations_spec.rb
|
300
302
|
- spec/shared/zendesk_resource.rb
|
@@ -308,4 +310,3 @@ test_files:
|
|
308
310
|
- spec/user_fields_spec.rb
|
309
311
|
- spec/user_identities_spec.rb
|
310
312
|
- spec/users_spec.rb
|
311
|
-
has_rdoc:
|