desk 0.3.3 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/README.mkd +305 -106
- data/TRANSITION.mkd +133 -0
- data/desk.gemspec +1 -1
- data/lib/desk.rb +1 -1
- data/lib/desk/api.rb +5 -1
- data/lib/desk/client.rb +184 -10
- data/lib/desk/client/article.rb +4 -83
- data/lib/desk/client/brand.rb +11 -0
- data/lib/desk/client/case.rb +59 -42
- data/lib/desk/client/company.rb +11 -0
- data/lib/desk/client/custom_field.rb +10 -0
- data/lib/desk/client/customer.rb +26 -124
- data/lib/desk/client/facebook_user.rb +11 -0
- data/lib/desk/client/filter.rb +11 -0
- data/lib/desk/client/group.rb +3 -29
- data/lib/desk/client/insight.rb +17 -0
- data/lib/desk/client/integration_url.rb +11 -0
- data/lib/desk/client/job.rb +11 -0
- data/lib/desk/client/label.rb +11 -0
- data/lib/desk/client/macro.rb +3 -133
- data/lib/desk/client/mailbox.rb +26 -0
- data/lib/desk/client/rule.rb +14 -0
- data/lib/desk/client/site_setting.rb +11 -0
- data/lib/desk/client/system_message.rb +16 -0
- data/lib/desk/client/topic.rb +4 -81
- data/lib/desk/client/twitter_account.rb +11 -0
- data/lib/desk/client/twitter_user.rb +11 -0
- data/lib/desk/client/user.rb +3 -30
- data/lib/desk/configuration.rb +1 -1
- data/lib/desk/connection.rb +2 -1
- data/lib/desk/deash.rb +100 -0
- data/lib/desk/request.rb +33 -20
- data/lib/desk/version.rb +1 -1
- data/lib/faraday/request/oauth.rb +6 -3
- data/lib/faraday/response/deashify.rb +23 -0
- data/spec/desk/client/article_spec.rb +62 -117
- data/spec/desk/client/brand_spec.rb +18 -0
- data/spec/desk/client/case_spec.rb +182 -66
- data/spec/desk/client/companies_spec.rb +26 -0
- data/spec/desk/client/custom_fields_spec.rb +18 -0
- data/spec/desk/client/customer_spec.rb +16 -145
- data/spec/desk/client/facebook_users_spec.rb +17 -0
- data/spec/desk/client/filter_spec.rb +28 -0
- data/spec/desk/client/group_spec.rb +32 -49
- data/spec/desk/client/inbound_mailboxes_spec.rb +70 -0
- data/spec/desk/client/integration_url_spec.rb +28 -0
- data/spec/desk/client/job_spec.rb +32 -0
- data/spec/desk/client/label_spec.rb +31 -0
- data/spec/desk/client/macro_spec.rb +22 -185
- data/spec/desk/client/rule_spec.rb +18 -0
- data/spec/desk/client/site_setting_spec.rb +18 -0
- data/spec/desk/client/system_message_spec.rb +42 -0
- data/spec/desk/client/topic_spec.rb +31 -112
- data/spec/desk/client/twitter_account_spec.rb +32 -0
- data/spec/desk/client/twitter_user_spec.rb +27 -0
- data/spec/desk/client/user_spec.rb +19 -42
- data/spec/desk_spec.rb +2 -2
- data/spec/faraday/response_spec.rb +3 -6
- data/spec/fixtures/article +50 -0
- data/spec/fixtures/article_create +50 -0
- data/spec/fixtures/article_translation +29 -0
- data/spec/fixtures/article_translation_create +29 -0
- data/spec/fixtures/article_translation_update +29 -0
- data/spec/fixtures/article_translations +81 -0
- data/spec/fixtures/article_update +50 -0
- data/spec/fixtures/articles +123 -0
- data/spec/fixtures/articles_search +124 -0
- data/spec/fixtures/brand +11 -0
- data/spec/fixtures/brands +45 -0
- data/spec/fixtures/case +44 -0
- data/spec/fixtures/case_attachment +19 -0
- data/spec/fixtures/case_attachment_create +19 -0
- data/spec/fixtures/case_attachments +61 -0
- data/spec/fixtures/case_create +51 -0
- data/spec/fixtures/case_message +26 -0
- data/spec/fixtures/case_note +21 -0
- data/spec/fixtures/case_note_create +26 -0
- data/spec/fixtures/case_notes +65 -0
- data/spec/fixtures/case_replies +75 -0
- data/spec/fixtures/case_reply +26 -0
- data/spec/fixtures/case_reply_create +26 -0
- data/spec/fixtures/case_reply_update +26 -0
- data/spec/fixtures/case_update +49 -0
- data/spec/fixtures/cases +111 -0
- data/spec/fixtures/cases_search +113 -0
- data/spec/fixtures/companies +75 -0
- data/spec/fixtures/companies_search +76 -0
- data/spec/fixtures/company +26 -0
- data/spec/fixtures/company_create +26 -0
- data/spec/fixtures/company_search +76 -0
- data/spec/fixtures/company_update +27 -0
- data/spec/fixtures/custom_field +15 -0
- data/spec/fixtures/custom_fields +58 -0
- data/spec/fixtures/customer +60 -0
- data/spec/fixtures/customer_create +54 -0
- data/spec/fixtures/customer_update +60 -0
- data/spec/fixtures/customers +143 -0
- data/spec/fixtures/customers_search +143 -0
- data/spec/fixtures/facebook_user +16 -0
- data/spec/fixtures/facebook_users +55 -0
- data/spec/fixtures/filter +16 -0
- data/spec/fixtures/filter_cases +111 -0
- data/spec/fixtures/filters +55 -0
- data/spec/fixtures/group +9 -0
- data/spec/fixtures/group_filters +55 -0
- data/spec/fixtures/group_users +63 -0
- data/spec/fixtures/groups +42 -0
- data/spec/fixtures/inbound_mailbox +32 -0
- data/spec/fixtures/inbound_mailboxes +87 -0
- data/spec/fixtures/integration_url +15 -0
- data/spec/fixtures/integration_url_create +15 -0
- data/spec/fixtures/integration_url_update +15 -0
- data/spec/fixtures/integration_urls +54 -0
- data/spec/fixtures/job +17 -0
- data/spec/fixtures/job_create +17 -0
- data/spec/fixtures/jobs +57 -0
- data/spec/fixtures/label +17 -0
- data/spec/fixtures/label_create +17 -0
- data/spec/fixtures/label_update +17 -0
- data/spec/fixtures/labels +57 -0
- data/spec/fixtures/macro +20 -0
- data/spec/fixtures/macro_action +17 -0
- data/spec/fixtures/macro_action_update +17 -0
- data/spec/fixtures/macro_actions +57 -0
- data/spec/fixtures/macro_create +20 -0
- data/spec/fixtures/macro_update +20 -0
- data/spec/fixtures/macros +63 -0
- data/spec/fixtures/rule +13 -0
- data/spec/fixtures/rules +49 -0
- data/spec/fixtures/site_setting +10 -0
- data/spec/fixtures/site_settings +43 -0
- data/spec/fixtures/system_message +4 -0
- data/spec/fixtures/topic +23 -0
- data/spec/fixtures/topic_create +23 -0
- data/spec/fixtures/topic_translation +12 -0
- data/spec/fixtures/topic_translation_create +12 -0
- data/spec/fixtures/topic_translation_update +12 -0
- data/spec/fixtures/topic_translations +47 -0
- data/spec/fixtures/topic_update +23 -0
- data/spec/fixtures/topics +69 -0
- data/spec/fixtures/twitter_account +14 -0
- data/spec/fixtures/twitter_account_tweet +20 -0
- data/spec/fixtures/twitter_account_tweet_create +20 -0
- data/spec/fixtures/twitter_account_tweets +63 -0
- data/spec/fixtures/twitter_accounts +51 -0
- data/spec/fixtures/twitter_user +18 -0
- data/spec/fixtures/twitter_user_create +18 -0
- data/spec/fixtures/twitter_users +59 -0
- data/spec/fixtures/user +20 -0
- data/spec/fixtures/user_preference +18 -0
- data/spec/fixtures/user_preference_update +14 -0
- data/spec/fixtures/user_preferences +223 -0
- data/spec/fixtures/users +63 -0
- data/spec/helper.rb +12 -0
- data/spec/shared_context.rb +16 -0
- data/spec/shared_examples.rb +312 -0
- metadata +247 -181
- data/lib/desk/client/interaction.rb +0 -75
- data/spec/desk/client/interaction_spec.rb +0 -191
- data/spec/fixtures/article.json +0 -50
- data/spec/fixtures/article_create.json +0 -54
- data/spec/fixtures/article_destroy.json +0 -3
- data/spec/fixtures/article_update.json +0 -54
- data/spec/fixtures/articles.json +0 -58
- data/spec/fixtures/case.json +0 -59
- data/spec/fixtures/case_update.json +0 -59
- data/spec/fixtures/cases.json +0 -182
- data/spec/fixtures/customer.json +0 -58
- data/spec/fixtures/customer_create.json +0 -56
- data/spec/fixtures/customer_create_email.json +0 -15
- data/spec/fixtures/customer_update.json +0 -47
- data/spec/fixtures/customer_update_email.json +0 -15
- data/spec/fixtures/customers.json +0 -98
- data/spec/fixtures/group.json +0 -8
- data/spec/fixtures/groups.json +0 -23
- data/spec/fixtures/interaction_create.json +0 -126
- data/spec/fixtures/interactions.json +0 -139
- data/spec/fixtures/macro.json +0 -8
- data/spec/fixtures/macro_action.json +0 -9
- data/spec/fixtures/macro_action_update.json +0 -12
- data/spec/fixtures/macro_actions.json +0 -69
- data/spec/fixtures/macro_create.json +0 -13
- data/spec/fixtures/macro_destroy.json +0 -3
- data/spec/fixtures/macro_update.json +0 -13
- data/spec/fixtures/macros.json +0 -24
- data/spec/fixtures/topic.json +0 -9
- data/spec/fixtures/topic_create.json +0 -14
- data/spec/fixtures/topic_destroy.json +0 -3
- data/spec/fixtures/topic_update.json +0 -14
- data/spec/fixtures/topics.json +0 -35
- data/spec/fixtures/user.json +0 -15
- data/spec/fixtures/users.json +0 -24
data/spec/fixtures/users
ADDED
@@ -0,0 +1,63 @@
|
|
1
|
+
{
|
2
|
+
"total_entries": 2,
|
3
|
+
"_links": {
|
4
|
+
"self": {
|
5
|
+
"href": "/api/v2/users?page=1&per_page=30",
|
6
|
+
"class": "page"
|
7
|
+
},
|
8
|
+
"first": {
|
9
|
+
"href": "/api/v2/users?page=1&per_page=30",
|
10
|
+
"class": "page"
|
11
|
+
},
|
12
|
+
"last": {
|
13
|
+
"href": "/api/v2/users?page=1&per_page=30",
|
14
|
+
"class": "page"
|
15
|
+
},
|
16
|
+
"next": null,
|
17
|
+
"previous": null
|
18
|
+
},
|
19
|
+
"_embedded": {
|
20
|
+
"entries": [
|
21
|
+
{
|
22
|
+
"name": "John Doe",
|
23
|
+
"public_name": "John Doe",
|
24
|
+
"email": "john@acme.com",
|
25
|
+
"level": "agent",
|
26
|
+
"created_at": "2012-11-22T22:59:20Z",
|
27
|
+
"updated_at": "2013-11-15T22:59:20Z",
|
28
|
+
"current_login_at": "2013-11-21T22:59:20Z",
|
29
|
+
"last_login_at": "2013-11-15T22:59:20Z",
|
30
|
+
"_links": {
|
31
|
+
"self": {
|
32
|
+
"href": "/api/v2/users/1",
|
33
|
+
"class": "user"
|
34
|
+
},
|
35
|
+
"preferences": {
|
36
|
+
"href": "/api/v2/users/1/preferences",
|
37
|
+
"class": "user_preference"
|
38
|
+
}
|
39
|
+
}
|
40
|
+
},
|
41
|
+
{
|
42
|
+
"name": "Jane Doe",
|
43
|
+
"public_name": "Jane Doe",
|
44
|
+
"email": "jane@acme.com",
|
45
|
+
"level": "agent",
|
46
|
+
"created_at": "2012-11-22T22:59:20Z",
|
47
|
+
"updated_at": "2013-11-15T22:59:20Z",
|
48
|
+
"current_login_at": "2013-11-21T22:59:20Z",
|
49
|
+
"last_login_at": "2013-11-15T22:59:20Z",
|
50
|
+
"_links": {
|
51
|
+
"self": {
|
52
|
+
"href": "/api/v2/users/2",
|
53
|
+
"class": "user"
|
54
|
+
},
|
55
|
+
"preferences": {
|
56
|
+
"href": "/api/v2/users/1/preferences",
|
57
|
+
"class": "user_preference"
|
58
|
+
}
|
59
|
+
}
|
60
|
+
}
|
61
|
+
]
|
62
|
+
}
|
63
|
+
}
|
data/spec/helper.rb
CHANGED
@@ -10,6 +10,10 @@ require 'rspec'
|
|
10
10
|
require 'webmock/rspec'
|
11
11
|
require 'email_spec'
|
12
12
|
require 'ruby-debug'
|
13
|
+
|
14
|
+
require 'shared_context'
|
15
|
+
require 'shared_examples'
|
16
|
+
|
13
17
|
RSpec.configure do |config|
|
14
18
|
config.include WebMock::API
|
15
19
|
end
|
@@ -22,6 +26,10 @@ def a_get(path)
|
|
22
26
|
a_request(:get, Desk.endpoint + path)
|
23
27
|
end
|
24
28
|
|
29
|
+
def a_patch(path)
|
30
|
+
a_request(:patch, Desk.endpoint + path)
|
31
|
+
end
|
32
|
+
|
25
33
|
def a_post(path)
|
26
34
|
a_request(:post, Desk.endpoint + path)
|
27
35
|
end
|
@@ -38,6 +46,10 @@ def stub_get(path)
|
|
38
46
|
stub_request(:get, Desk.endpoint + path)
|
39
47
|
end
|
40
48
|
|
49
|
+
def stub_patch(path)
|
50
|
+
stub_request(:patch, Desk.endpoint + path)
|
51
|
+
end
|
52
|
+
|
41
53
|
def stub_post(path)
|
42
54
|
stub_request(:post, Desk.endpoint + path)
|
43
55
|
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
shared_context "basic configuration" do
|
2
|
+
subject(:client) {
|
3
|
+
Desk::Client.new(
|
4
|
+
:subdomain => "example",
|
5
|
+
:consumer_key => 'CK',
|
6
|
+
:consumer_secret => 'CS',
|
7
|
+
:oauth_token => 'OT',
|
8
|
+
:oauth_token_secret => 'OS'
|
9
|
+
)
|
10
|
+
}
|
11
|
+
end
|
12
|
+
|
13
|
+
shared_context "plural endpoint" do
|
14
|
+
let(:endpoints) { Desk.plural(endpoint) }
|
15
|
+
let(:sub_endpoints) { Desk.plural(sub_endpoint) }
|
16
|
+
end
|
@@ -0,0 +1,312 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
shared_examples_for "a list endpoint" do
|
4
|
+
|
5
|
+
include_context "plural endpoint"
|
6
|
+
|
7
|
+
subject { client.send("list_#{endpoints}") }
|
8
|
+
|
9
|
+
before do
|
10
|
+
stub_get(endpoints).to_return(:body => fixture(endpoints))
|
11
|
+
end
|
12
|
+
|
13
|
+
it "gets the correct resource" do
|
14
|
+
subject
|
15
|
+
expect(a_get(endpoints)).to have_been_made
|
16
|
+
end
|
17
|
+
|
18
|
+
it { expect(subject).to be_a Hashie::Deash }
|
19
|
+
|
20
|
+
it "has valid entries" do
|
21
|
+
expect(subject.first.id).to eq(id)
|
22
|
+
expect(subject.first.send(check_key)).to eq(check_value)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "allows raw access" do
|
26
|
+
expect(subject.raw.first).to be_a Array
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
shared_examples_for "a show endpoint" do
|
32
|
+
|
33
|
+
include_context "plural endpoint"
|
34
|
+
|
35
|
+
subject { client.send("show_#{endpoint}", id) }
|
36
|
+
|
37
|
+
before do
|
38
|
+
stub_get("#{endpoints}/#{id}").to_return(:body => fixture(endpoint))
|
39
|
+
end
|
40
|
+
|
41
|
+
it "gets the correct resource" do
|
42
|
+
subject
|
43
|
+
expect(a_get("#{endpoints}/#{id}")).to have_been_made
|
44
|
+
end
|
45
|
+
|
46
|
+
it { expect(subject).to be_a Hashie::Deash }
|
47
|
+
|
48
|
+
it "has a valid entry" do
|
49
|
+
expect(subject.id).to eq(id)
|
50
|
+
expect(subject.send(check_key)).to eq(check_value)
|
51
|
+
end
|
52
|
+
|
53
|
+
it "allows raw access" do
|
54
|
+
expect(subject.raw).to be_a Hashie::Deash
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
shared_examples_for "a create endpoint" do |args|
|
60
|
+
|
61
|
+
include_context "plural endpoint"
|
62
|
+
|
63
|
+
subject { client.send("create_#{endpoint}", args) }
|
64
|
+
|
65
|
+
before do
|
66
|
+
stub_post("#{endpoints}").to_return(:body => fixture("#{endpoint}_create"))
|
67
|
+
end
|
68
|
+
|
69
|
+
it "gets the correct resource" do
|
70
|
+
subject
|
71
|
+
expect(a_post(endpoints)).to have_been_made
|
72
|
+
end
|
73
|
+
|
74
|
+
it { expect(subject).to be_a Hashie::Deash }
|
75
|
+
|
76
|
+
it "has a valid entry" do
|
77
|
+
expect(subject.id).to eq(id)
|
78
|
+
expect(subject.send(check_key)).to eq(check_value)
|
79
|
+
end
|
80
|
+
|
81
|
+
it "allows raw access" do
|
82
|
+
expect(subject.raw).to be_a Hashie::Deash
|
83
|
+
end
|
84
|
+
|
85
|
+
end
|
86
|
+
|
87
|
+
shared_examples_for "an update endpoint" do |args|
|
88
|
+
|
89
|
+
include_context "plural endpoint"
|
90
|
+
|
91
|
+
subject { client.send("update_#{endpoint}", id, args) }
|
92
|
+
|
93
|
+
before do
|
94
|
+
stub_patch("#{endpoints}/#{id}").
|
95
|
+
to_return(:body => fixture("#{endpoint}_update"))
|
96
|
+
end
|
97
|
+
|
98
|
+
it "gets the correct resource" do
|
99
|
+
subject
|
100
|
+
expect(a_patch("#{endpoints}/#{id}")).to have_been_made
|
101
|
+
end
|
102
|
+
|
103
|
+
it { expect(subject).to be_a Hashie::Deash }
|
104
|
+
|
105
|
+
it "has a valid entry" do
|
106
|
+
expect(subject.id).to eq(id)
|
107
|
+
expect(subject.send(check_key)).to eq(check_value)
|
108
|
+
end
|
109
|
+
|
110
|
+
it "allows raw access" do
|
111
|
+
expect(subject.raw).to be_a Hashie::Deash
|
112
|
+
end
|
113
|
+
|
114
|
+
end
|
115
|
+
|
116
|
+
shared_examples_for "a delete endpoint" do
|
117
|
+
|
118
|
+
include_context "plural endpoint"
|
119
|
+
|
120
|
+
subject { client.send("delete_#{endpoint}", id) }
|
121
|
+
|
122
|
+
before do
|
123
|
+
stub_delete("#{endpoints}/#{id}").to_return(:body => nil)
|
124
|
+
end
|
125
|
+
|
126
|
+
it "gets the correct resource" do
|
127
|
+
subject
|
128
|
+
expect(a_delete("#{endpoints}/#{id}")).to have_been_made
|
129
|
+
end
|
130
|
+
|
131
|
+
it "has an empty response" do
|
132
|
+
expect(subject).to eq(nil)
|
133
|
+
end
|
134
|
+
|
135
|
+
end
|
136
|
+
|
137
|
+
shared_examples_for "a search endpoint" do |args|
|
138
|
+
|
139
|
+
include_context "plural endpoint"
|
140
|
+
|
141
|
+
subject { client.send("search_#{endpoints}", args) }
|
142
|
+
|
143
|
+
before do
|
144
|
+
stub_get("#{endpoints}/search").with(:query => args).
|
145
|
+
to_return(:body => fixture("#{endpoints}_search"))
|
146
|
+
end
|
147
|
+
|
148
|
+
it "gets the correct resource" do
|
149
|
+
subject
|
150
|
+
expect(a_get("#{endpoints}/search").with(:query => args)).
|
151
|
+
to have_been_made
|
152
|
+
end
|
153
|
+
|
154
|
+
it { expect(subject).to be_a Hashie::Deash }
|
155
|
+
|
156
|
+
it "has valid entries" do
|
157
|
+
expect(subject.first.id).to eq(id)
|
158
|
+
expect(subject.first.send(check_key)).to eq(check_value)
|
159
|
+
end
|
160
|
+
|
161
|
+
it "allows raw access" do
|
162
|
+
expect(subject.raw.first).to be_a Array
|
163
|
+
end
|
164
|
+
|
165
|
+
end
|
166
|
+
|
167
|
+
shared_examples_for "a sub list endpoint" do |has_parent_id|
|
168
|
+
|
169
|
+
has_parent_id = true unless has_parent_id === false
|
170
|
+
|
171
|
+
include_context "plural endpoint"
|
172
|
+
|
173
|
+
subject { client.send("list_#{endpoint}_#{sub_endpoints}", id) }
|
174
|
+
|
175
|
+
before do
|
176
|
+
stub_get("#{endpoints}/#{id}/#{sub_endpoints}").
|
177
|
+
to_return(:body => fixture("#{endpoint}_#{sub_endpoints}"))
|
178
|
+
end
|
179
|
+
|
180
|
+
it "gets the correct resource" do
|
181
|
+
subject
|
182
|
+
expect(a_get("#{endpoints}/#{id}/#{sub_endpoints}")).to have_been_made
|
183
|
+
end
|
184
|
+
|
185
|
+
it { expect(subject).to be_a Hashie::Deash }
|
186
|
+
|
187
|
+
it "has valid entries" do
|
188
|
+
expect(subject.first.id).to eq(sub_id)
|
189
|
+
expect(subject.first.parent_id).to eq(id) if has_parent_id
|
190
|
+
expect(subject.first.send(check_key)).to eq(check_value)
|
191
|
+
end
|
192
|
+
|
193
|
+
it "allows raw access" do
|
194
|
+
expect(subject.raw.first).to be_a Array
|
195
|
+
end
|
196
|
+
|
197
|
+
end
|
198
|
+
|
199
|
+
shared_examples_for "a sub show endpoint" do
|
200
|
+
|
201
|
+
include_context "plural endpoint"
|
202
|
+
|
203
|
+
subject { client.send("show_#{endpoint}_#{sub_endpoint}", id, sub_id) }
|
204
|
+
|
205
|
+
before do
|
206
|
+
stub_get("#{endpoints}/#{id}/#{sub_endpoints}/#{sub_id}").
|
207
|
+
to_return(:body => fixture("#{endpoint}_#{sub_endpoint}"))
|
208
|
+
end
|
209
|
+
|
210
|
+
it "gets the correct resource" do
|
211
|
+
subject
|
212
|
+
expect(a_get("#{endpoints}/#{id}/#{sub_endpoints}/#{sub_id}")).
|
213
|
+
to have_been_made
|
214
|
+
end
|
215
|
+
|
216
|
+
it { expect(subject).to be_a Hashie::Deash }
|
217
|
+
|
218
|
+
it "has a valid entry" do
|
219
|
+
expect(subject.id).to eq(sub_id)
|
220
|
+
expect(subject.parent_id).to eq(id)
|
221
|
+
expect(subject.send(check_key)).to eq(check_value)
|
222
|
+
end
|
223
|
+
|
224
|
+
it "allows raw access" do
|
225
|
+
expect(subject.raw).to be_a Hashie::Deash
|
226
|
+
end
|
227
|
+
|
228
|
+
end
|
229
|
+
|
230
|
+
shared_examples_for "a sub create endpoint" do |args|
|
231
|
+
|
232
|
+
include_context "plural endpoint"
|
233
|
+
|
234
|
+
subject { client.send("create_#{endpoint}_#{sub_endpoint}", id, args) }
|
235
|
+
|
236
|
+
before do
|
237
|
+
stub_post("#{endpoints}/#{id}/#{sub_endpoints}").
|
238
|
+
to_return(:body => fixture("#{endpoint}_#{sub_endpoint}_create"))
|
239
|
+
end
|
240
|
+
|
241
|
+
it "gets the correct resource" do
|
242
|
+
subject
|
243
|
+
expect(a_post("#{endpoints}/#{id}/#{sub_endpoints}")).to have_been_made
|
244
|
+
end
|
245
|
+
|
246
|
+
it { expect(subject).to be_a Hashie::Deash }
|
247
|
+
|
248
|
+
it "has a valid entry" do
|
249
|
+
expect(subject.id).to eq(sub_id)
|
250
|
+
expect(subject.parent_id).to eq(id)
|
251
|
+
expect(subject.send(check_key)).to eq(check_value)
|
252
|
+
end
|
253
|
+
|
254
|
+
it "allows raw access" do
|
255
|
+
expect(subject.raw).to be_a Hashie::Deash
|
256
|
+
end
|
257
|
+
|
258
|
+
end
|
259
|
+
|
260
|
+
shared_examples_for "a sub update endpoint" do |args|
|
261
|
+
|
262
|
+
include_context "plural endpoint"
|
263
|
+
|
264
|
+
subject { client.send("update_#{endpoint}_#{sub_endpoint}", id, sub_id, args) }
|
265
|
+
|
266
|
+
before do
|
267
|
+
stub_patch("#{endpoints}/#{id}/#{sub_endpoints}/#{sub_id}").
|
268
|
+
to_return(:body => fixture("#{endpoint}_#{sub_endpoint}_update"))
|
269
|
+
end
|
270
|
+
|
271
|
+
it "gets the correct resource" do
|
272
|
+
subject
|
273
|
+
expect(a_patch("#{endpoints}/#{id}/#{sub_endpoints}/#{sub_id}")).
|
274
|
+
to have_been_made
|
275
|
+
end
|
276
|
+
|
277
|
+
it { expect(subject).to be_a Hashie::Deash }
|
278
|
+
|
279
|
+
it "has a valid entry" do
|
280
|
+
expect(subject.id).to eq(sub_id)
|
281
|
+
expect(subject.parent_id).to eq(id)
|
282
|
+
expect(subject.send(check_key)).to eq(check_value)
|
283
|
+
end
|
284
|
+
|
285
|
+
it "allows raw access" do
|
286
|
+
expect(subject.raw).to be_a Hashie::Deash
|
287
|
+
end
|
288
|
+
|
289
|
+
end
|
290
|
+
|
291
|
+
shared_examples_for "a sub delete endpoint" do
|
292
|
+
|
293
|
+
include_context "plural endpoint"
|
294
|
+
|
295
|
+
subject { client.send("delete_#{endpoint}_#{sub_endpoint}", id, sub_id) }
|
296
|
+
|
297
|
+
before do
|
298
|
+
stub_delete("#{endpoints}/#{id}/#{sub_endpoints}/#{sub_id}").
|
299
|
+
to_return(:body => nil)
|
300
|
+
end
|
301
|
+
|
302
|
+
it "gets the correct resource" do
|
303
|
+
subject
|
304
|
+
expect(a_delete("#{endpoints}/#{id}/#{sub_endpoints}/#{sub_id}")).
|
305
|
+
to have_been_made
|
306
|
+
end
|
307
|
+
|
308
|
+
it "has an empty response" do
|
309
|
+
expect(subject).to eq(nil)
|
310
|
+
end
|
311
|
+
|
312
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: desk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 3
|
9
|
-
- 3
|
10
|
-
version: 0.3.3
|
4
|
+
version: 1.0.0
|
11
5
|
platform: ruby
|
12
6
|
authors:
|
13
7
|
- Chris Warren
|
@@ -15,20 +9,15 @@ autorequire:
|
|
15
9
|
bindir: bin
|
16
10
|
cert_chain: []
|
17
11
|
|
18
|
-
date:
|
12
|
+
date: 2014-01-31 00:00:00 Z
|
19
13
|
dependencies:
|
20
14
|
- !ruby/object:Gem::Dependency
|
21
15
|
name: nokogiri
|
22
16
|
prerelease: false
|
23
17
|
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
-
none: false
|
25
18
|
requirements:
|
26
19
|
- - ~>
|
27
20
|
- !ruby/object:Gem::Version
|
28
|
-
hash: 7
|
29
|
-
segments:
|
30
|
-
- 1
|
31
|
-
- 4
|
32
21
|
version: "1.4"
|
33
22
|
type: :development
|
34
23
|
version_requirements: *id001
|
@@ -36,14 +25,9 @@ dependencies:
|
|
36
25
|
name: maruku
|
37
26
|
prerelease: false
|
38
27
|
requirement: &id002 !ruby/object:Gem::Requirement
|
39
|
-
none: false
|
40
28
|
requirements:
|
41
29
|
- - ~>
|
42
30
|
- !ruby/object:Gem::Version
|
43
|
-
hash: 7
|
44
|
-
segments:
|
45
|
-
- 0
|
46
|
-
- 6
|
47
31
|
version: "0.6"
|
48
32
|
type: :development
|
49
33
|
version_requirements: *id002
|
@@ -51,14 +35,9 @@ dependencies:
|
|
51
35
|
name: rake
|
52
36
|
prerelease: false
|
53
37
|
requirement: &id003 !ruby/object:Gem::Requirement
|
54
|
-
none: false
|
55
38
|
requirements:
|
56
39
|
- - ~>
|
57
40
|
- !ruby/object:Gem::Version
|
58
|
-
hash: 27
|
59
|
-
segments:
|
60
|
-
- 0
|
61
|
-
- 8
|
62
41
|
version: "0.8"
|
63
42
|
type: :development
|
64
43
|
version_requirements: *id003
|
@@ -66,14 +45,9 @@ dependencies:
|
|
66
45
|
name: rspec
|
67
46
|
prerelease: false
|
68
47
|
requirement: &id004 !ruby/object:Gem::Requirement
|
69
|
-
none: false
|
70
48
|
requirements:
|
71
49
|
- - ~>
|
72
50
|
- !ruby/object:Gem::Version
|
73
|
-
hash: 9
|
74
|
-
segments:
|
75
|
-
- 2
|
76
|
-
- 5
|
77
51
|
version: "2.5"
|
78
52
|
type: :development
|
79
53
|
version_requirements: *id004
|
@@ -81,15 +55,9 @@ dependencies:
|
|
81
55
|
name: email_spec
|
82
56
|
prerelease: false
|
83
57
|
requirement: &id005 !ruby/object:Gem::Requirement
|
84
|
-
none: false
|
85
58
|
requirements:
|
86
59
|
- - ~>
|
87
60
|
- !ruby/object:Gem::Version
|
88
|
-
hash: 17
|
89
|
-
segments:
|
90
|
-
- 1
|
91
|
-
- 1
|
92
|
-
- 1
|
93
61
|
version: 1.1.1
|
94
62
|
type: :development
|
95
63
|
version_requirements: *id005
|
@@ -97,14 +65,9 @@ dependencies:
|
|
97
65
|
name: simplecov
|
98
66
|
prerelease: false
|
99
67
|
requirement: &id006 !ruby/object:Gem::Requirement
|
100
|
-
none: false
|
101
68
|
requirements:
|
102
69
|
- - ~>
|
103
70
|
- !ruby/object:Gem::Version
|
104
|
-
hash: 3
|
105
|
-
segments:
|
106
|
-
- 0
|
107
|
-
- 4
|
108
71
|
version: "0.4"
|
109
72
|
type: :development
|
110
73
|
version_requirements: *id006
|
@@ -112,14 +75,9 @@ dependencies:
|
|
112
75
|
name: webmock
|
113
76
|
prerelease: false
|
114
77
|
requirement: &id007 !ruby/object:Gem::Requirement
|
115
|
-
none: false
|
116
78
|
requirements:
|
117
79
|
- - ~>
|
118
80
|
- !ruby/object:Gem::Version
|
119
|
-
hash: 3
|
120
|
-
segments:
|
121
|
-
- 1
|
122
|
-
- 6
|
123
81
|
version: "1.6"
|
124
82
|
type: :development
|
125
83
|
version_requirements: *id007
|
@@ -127,14 +85,9 @@ dependencies:
|
|
127
85
|
name: yard
|
128
86
|
prerelease: false
|
129
87
|
requirement: &id008 !ruby/object:Gem::Requirement
|
130
|
-
none: false
|
131
88
|
requirements:
|
132
89
|
- - ~>
|
133
90
|
- !ruby/object:Gem::Version
|
134
|
-
hash: 7
|
135
|
-
segments:
|
136
|
-
- 0
|
137
|
-
- 6
|
138
91
|
version: "0.6"
|
139
92
|
type: :development
|
140
93
|
version_requirements: *id008
|
@@ -142,14 +95,9 @@ dependencies:
|
|
142
95
|
name: json
|
143
96
|
prerelease: false
|
144
97
|
requirement: &id009 !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
98
|
requirements:
|
147
99
|
- - ~>
|
148
100
|
- !ruby/object:Gem::Version
|
149
|
-
hash: 1
|
150
|
-
segments:
|
151
|
-
- 1
|
152
|
-
- 7
|
153
101
|
version: "1.7"
|
154
102
|
type: :runtime
|
155
103
|
version_requirements: *id009
|
@@ -157,15 +105,9 @@ dependencies:
|
|
157
105
|
name: hashie
|
158
106
|
prerelease: false
|
159
107
|
requirement: &id010 !ruby/object:Gem::Requirement
|
160
|
-
none: false
|
161
108
|
requirements:
|
162
109
|
- - ~>
|
163
110
|
- !ruby/object:Gem::Version
|
164
|
-
hash: 31
|
165
|
-
segments:
|
166
|
-
- 1
|
167
|
-
- 2
|
168
|
-
- 0
|
169
111
|
version: 1.2.0
|
170
112
|
type: :runtime
|
171
113
|
version_requirements: *id010
|
@@ -173,15 +115,9 @@ dependencies:
|
|
173
115
|
name: faraday
|
174
116
|
prerelease: false
|
175
117
|
requirement: &id011 !ruby/object:Gem::Requirement
|
176
|
-
none: false
|
177
118
|
requirements:
|
178
119
|
- - ~>
|
179
120
|
- !ruby/object:Gem::Version
|
180
|
-
hash: 63
|
181
|
-
segments:
|
182
|
-
- 0
|
183
|
-
- 8
|
184
|
-
- 0
|
185
121
|
version: 0.8.0
|
186
122
|
type: :runtime
|
187
123
|
version_requirements: *id011
|
@@ -189,15 +125,9 @@ dependencies:
|
|
189
125
|
name: faraday_middleware
|
190
126
|
prerelease: false
|
191
127
|
requirement: &id012 !ruby/object:Gem::Requirement
|
192
|
-
none: false
|
193
128
|
requirements:
|
194
129
|
- - ~>
|
195
130
|
- !ruby/object:Gem::Version
|
196
|
-
hash: 59
|
197
|
-
segments:
|
198
|
-
- 0
|
199
|
-
- 9
|
200
|
-
- 0
|
201
131
|
version: 0.9.0
|
202
132
|
type: :runtime
|
203
133
|
version_requirements: *id012
|
@@ -205,14 +135,9 @@ dependencies:
|
|
205
135
|
name: multi_json
|
206
136
|
prerelease: false
|
207
137
|
requirement: &id013 !ruby/object:Gem::Requirement
|
208
|
-
none: false
|
209
138
|
requirements:
|
210
139
|
- - ~>
|
211
140
|
- !ruby/object:Gem::Version
|
212
|
-
hash: 3
|
213
|
-
segments:
|
214
|
-
- 1
|
215
|
-
- 6
|
216
141
|
version: "1.6"
|
217
142
|
type: :runtime
|
218
143
|
version_requirements: *id013
|
@@ -220,14 +145,9 @@ dependencies:
|
|
220
145
|
name: multi_xml
|
221
146
|
prerelease: false
|
222
147
|
requirement: &id014 !ruby/object:Gem::Requirement
|
223
|
-
none: false
|
224
148
|
requirements:
|
225
149
|
- - ~>
|
226
150
|
- !ruby/object:Gem::Version
|
227
|
-
hash: 1
|
228
|
-
segments:
|
229
|
-
- 0
|
230
|
-
- 5
|
231
151
|
version: "0.5"
|
232
152
|
type: :runtime
|
233
153
|
version_requirements: *id014
|
@@ -235,15 +155,9 @@ dependencies:
|
|
235
155
|
name: rash
|
236
156
|
prerelease: false
|
237
157
|
requirement: &id015 !ruby/object:Gem::Requirement
|
238
|
-
none: false
|
239
158
|
requirements:
|
240
159
|
- - ~>
|
241
160
|
- !ruby/object:Gem::Version
|
242
|
-
hash: 17
|
243
|
-
segments:
|
244
|
-
- 0
|
245
|
-
- 3
|
246
|
-
- 1
|
247
161
|
version: 0.3.1
|
248
162
|
type: :runtime
|
249
163
|
version_requirements: *id015
|
@@ -251,30 +165,19 @@ dependencies:
|
|
251
165
|
name: simple_oauth
|
252
166
|
prerelease: false
|
253
167
|
requirement: &id016 !ruby/object:Gem::Requirement
|
254
|
-
none: false
|
255
168
|
requirements:
|
256
169
|
- - ~>
|
257
170
|
- !ruby/object:Gem::Version
|
258
|
-
|
259
|
-
segments:
|
260
|
-
- 0
|
261
|
-
- 1
|
262
|
-
- 4
|
263
|
-
version: 0.1.4
|
171
|
+
version: 0.2.0
|
264
172
|
type: :runtime
|
265
173
|
version_requirements: *id016
|
266
174
|
- !ruby/object:Gem::Dependency
|
267
175
|
name: pony
|
268
176
|
prerelease: false
|
269
177
|
requirement: &id017 !ruby/object:Gem::Requirement
|
270
|
-
none: false
|
271
178
|
requirements:
|
272
179
|
- - ~>
|
273
180
|
- !ruby/object:Gem::Version
|
274
|
-
hash: 13
|
275
|
-
segments:
|
276
|
-
- 1
|
277
|
-
- 1
|
278
181
|
version: "1.1"
|
279
182
|
type: :runtime
|
280
183
|
version_requirements: *id017
|
@@ -297,153 +200,316 @@ files:
|
|
297
200
|
- LICENSE.mkd
|
298
201
|
- README.mkd
|
299
202
|
- Rakefile
|
203
|
+
- TRANSITION.mkd
|
300
204
|
- desk.gemspec
|
301
205
|
- lib/desk.rb
|
302
206
|
- lib/desk/api.rb
|
303
207
|
- lib/desk/authentication.rb
|
304
208
|
- lib/desk/client.rb
|
305
209
|
- lib/desk/client/article.rb
|
210
|
+
- lib/desk/client/brand.rb
|
306
211
|
- lib/desk/client/case.rb
|
212
|
+
- lib/desk/client/company.rb
|
213
|
+
- lib/desk/client/custom_field.rb
|
307
214
|
- lib/desk/client/customer.rb
|
215
|
+
- lib/desk/client/facebook_user.rb
|
216
|
+
- lib/desk/client/filter.rb
|
308
217
|
- lib/desk/client/group.rb
|
309
|
-
- lib/desk/client/
|
218
|
+
- lib/desk/client/insight.rb
|
219
|
+
- lib/desk/client/integration_url.rb
|
220
|
+
- lib/desk/client/job.rb
|
221
|
+
- lib/desk/client/label.rb
|
310
222
|
- lib/desk/client/macro.rb
|
223
|
+
- lib/desk/client/mailbox.rb
|
224
|
+
- lib/desk/client/rule.rb
|
225
|
+
- lib/desk/client/site_setting.rb
|
226
|
+
- lib/desk/client/system_message.rb
|
311
227
|
- lib/desk/client/topic.rb
|
228
|
+
- lib/desk/client/twitter_account.rb
|
229
|
+
- lib/desk/client/twitter_user.rb
|
312
230
|
- lib/desk/client/user.rb
|
313
231
|
- lib/desk/configuration.rb
|
314
232
|
- lib/desk/connection.rb
|
233
|
+
- lib/desk/deash.rb
|
315
234
|
- lib/desk/error.rb
|
316
235
|
- lib/desk/request.rb
|
317
236
|
- lib/desk/version.rb
|
318
237
|
- lib/faraday/request/multipart_with_file.rb
|
319
238
|
- lib/faraday/request/oauth.rb
|
239
|
+
- lib/faraday/response/deashify.rb
|
320
240
|
- lib/faraday/response/raise_http_4xx.rb
|
321
241
|
- lib/faraday/response/raise_http_5xx.rb
|
322
242
|
- spec/desk/api_spec.rb
|
323
243
|
- spec/desk/client/article_spec.rb
|
244
|
+
- spec/desk/client/brand_spec.rb
|
324
245
|
- spec/desk/client/case_spec.rb
|
246
|
+
- spec/desk/client/companies_spec.rb
|
247
|
+
- spec/desk/client/custom_fields_spec.rb
|
325
248
|
- spec/desk/client/customer_spec.rb
|
249
|
+
- spec/desk/client/facebook_users_spec.rb
|
250
|
+
- spec/desk/client/filter_spec.rb
|
326
251
|
- spec/desk/client/group_spec.rb
|
327
|
-
- spec/desk/client/
|
252
|
+
- spec/desk/client/inbound_mailboxes_spec.rb
|
253
|
+
- spec/desk/client/integration_url_spec.rb
|
254
|
+
- spec/desk/client/job_spec.rb
|
255
|
+
- spec/desk/client/label_spec.rb
|
328
256
|
- spec/desk/client/macro_spec.rb
|
257
|
+
- spec/desk/client/rule_spec.rb
|
258
|
+
- spec/desk/client/site_setting_spec.rb
|
259
|
+
- spec/desk/client/system_message_spec.rb
|
329
260
|
- spec/desk/client/topic_spec.rb
|
261
|
+
- spec/desk/client/twitter_account_spec.rb
|
262
|
+
- spec/desk/client/twitter_user_spec.rb
|
330
263
|
- spec/desk/client/user_spec.rb
|
331
264
|
- spec/desk/client_spec.rb
|
332
265
|
- spec/desk_spec.rb
|
333
266
|
- spec/faraday/response_spec.rb
|
334
|
-
- spec/fixtures/article
|
335
|
-
- spec/fixtures/article_create
|
336
|
-
- spec/fixtures/
|
337
|
-
- spec/fixtures/
|
338
|
-
- spec/fixtures/
|
339
|
-
- spec/fixtures/
|
340
|
-
- spec/fixtures/
|
341
|
-
- spec/fixtures/
|
342
|
-
- spec/fixtures/
|
343
|
-
- spec/fixtures/
|
344
|
-
- spec/fixtures/
|
345
|
-
- spec/fixtures/
|
346
|
-
- spec/fixtures/
|
347
|
-
- spec/fixtures/
|
348
|
-
- spec/fixtures/
|
349
|
-
- spec/fixtures/
|
350
|
-
- spec/fixtures/
|
351
|
-
- spec/fixtures/
|
352
|
-
- spec/fixtures/
|
353
|
-
- spec/fixtures/
|
354
|
-
- spec/fixtures/
|
355
|
-
- spec/fixtures/
|
356
|
-
- spec/fixtures/
|
357
|
-
- spec/fixtures/
|
358
|
-
- spec/fixtures/
|
359
|
-
- spec/fixtures/
|
360
|
-
- spec/fixtures/
|
361
|
-
- spec/fixtures/
|
362
|
-
- spec/fixtures/
|
363
|
-
- spec/fixtures/
|
364
|
-
- spec/fixtures/
|
365
|
-
- spec/fixtures/
|
366
|
-
- spec/fixtures/
|
267
|
+
- spec/fixtures/article
|
268
|
+
- spec/fixtures/article_create
|
269
|
+
- spec/fixtures/article_translation
|
270
|
+
- spec/fixtures/article_translation_create
|
271
|
+
- spec/fixtures/article_translation_update
|
272
|
+
- spec/fixtures/article_translations
|
273
|
+
- spec/fixtures/article_update
|
274
|
+
- spec/fixtures/articles
|
275
|
+
- spec/fixtures/articles_search
|
276
|
+
- spec/fixtures/brand
|
277
|
+
- spec/fixtures/brands
|
278
|
+
- spec/fixtures/case
|
279
|
+
- spec/fixtures/case_attachment
|
280
|
+
- spec/fixtures/case_attachment_create
|
281
|
+
- spec/fixtures/case_attachments
|
282
|
+
- spec/fixtures/case_create
|
283
|
+
- spec/fixtures/case_message
|
284
|
+
- spec/fixtures/case_note
|
285
|
+
- spec/fixtures/case_note_create
|
286
|
+
- spec/fixtures/case_notes
|
287
|
+
- spec/fixtures/case_replies
|
288
|
+
- spec/fixtures/case_reply
|
289
|
+
- spec/fixtures/case_reply_create
|
290
|
+
- spec/fixtures/case_reply_update
|
291
|
+
- spec/fixtures/case_update
|
292
|
+
- spec/fixtures/cases
|
293
|
+
- spec/fixtures/cases_search
|
294
|
+
- spec/fixtures/companies
|
295
|
+
- spec/fixtures/companies_search
|
296
|
+
- spec/fixtures/company
|
297
|
+
- spec/fixtures/company_create
|
298
|
+
- spec/fixtures/company_search
|
299
|
+
- spec/fixtures/company_update
|
300
|
+
- spec/fixtures/custom_field
|
301
|
+
- spec/fixtures/custom_fields
|
302
|
+
- spec/fixtures/customer
|
303
|
+
- spec/fixtures/customer_create
|
304
|
+
- spec/fixtures/customer_update
|
305
|
+
- spec/fixtures/customers
|
306
|
+
- spec/fixtures/customers_search
|
307
|
+
- spec/fixtures/facebook_user
|
308
|
+
- spec/fixtures/facebook_users
|
309
|
+
- spec/fixtures/filter
|
310
|
+
- spec/fixtures/filter_cases
|
311
|
+
- spec/fixtures/filters
|
312
|
+
- spec/fixtures/group
|
313
|
+
- spec/fixtures/group_filters
|
314
|
+
- spec/fixtures/group_users
|
315
|
+
- spec/fixtures/groups
|
316
|
+
- spec/fixtures/inbound_mailbox
|
317
|
+
- spec/fixtures/inbound_mailboxes
|
318
|
+
- spec/fixtures/integration_url
|
319
|
+
- spec/fixtures/integration_url_create
|
320
|
+
- spec/fixtures/integration_url_update
|
321
|
+
- spec/fixtures/integration_urls
|
322
|
+
- spec/fixtures/job
|
323
|
+
- spec/fixtures/job_create
|
324
|
+
- spec/fixtures/jobs
|
325
|
+
- spec/fixtures/label
|
326
|
+
- spec/fixtures/label_create
|
327
|
+
- spec/fixtures/label_update
|
328
|
+
- spec/fixtures/labels
|
329
|
+
- spec/fixtures/macro
|
330
|
+
- spec/fixtures/macro_action
|
331
|
+
- spec/fixtures/macro_action_update
|
332
|
+
- spec/fixtures/macro_actions
|
333
|
+
- spec/fixtures/macro_create
|
334
|
+
- spec/fixtures/macro_update
|
335
|
+
- spec/fixtures/macros
|
336
|
+
- spec/fixtures/rule
|
337
|
+
- spec/fixtures/rules
|
338
|
+
- spec/fixtures/site_setting
|
339
|
+
- spec/fixtures/site_settings
|
340
|
+
- spec/fixtures/system_message
|
341
|
+
- spec/fixtures/topic
|
342
|
+
- spec/fixtures/topic_create
|
343
|
+
- spec/fixtures/topic_translation
|
344
|
+
- spec/fixtures/topic_translation_create
|
345
|
+
- spec/fixtures/topic_translation_update
|
346
|
+
- spec/fixtures/topic_translations
|
347
|
+
- spec/fixtures/topic_update
|
348
|
+
- spec/fixtures/topics
|
349
|
+
- spec/fixtures/twitter_account
|
350
|
+
- spec/fixtures/twitter_account_tweet
|
351
|
+
- spec/fixtures/twitter_account_tweet_create
|
352
|
+
- spec/fixtures/twitter_account_tweets
|
353
|
+
- spec/fixtures/twitter_accounts
|
354
|
+
- spec/fixtures/twitter_user
|
355
|
+
- spec/fixtures/twitter_user_create
|
356
|
+
- spec/fixtures/twitter_users
|
357
|
+
- spec/fixtures/user
|
358
|
+
- spec/fixtures/user_preference
|
359
|
+
- spec/fixtures/user_preference_update
|
360
|
+
- spec/fixtures/user_preferences
|
361
|
+
- spec/fixtures/users
|
367
362
|
- spec/helper.rb
|
363
|
+
- spec/shared_context.rb
|
364
|
+
- spec/shared_examples.rb
|
368
365
|
homepage: https://github.com/zencoder/desk
|
369
366
|
licenses: []
|
370
367
|
|
368
|
+
metadata: {}
|
369
|
+
|
371
370
|
post_install_message:
|
372
371
|
rdoc_options: []
|
373
372
|
|
374
373
|
require_paths:
|
375
374
|
- lib
|
376
375
|
required_ruby_version: !ruby/object:Gem::Requirement
|
377
|
-
none: false
|
378
376
|
requirements:
|
379
377
|
- - ">="
|
380
378
|
- !ruby/object:Gem::Version
|
381
|
-
hash: 3
|
382
|
-
segments:
|
383
|
-
- 0
|
384
379
|
version: "0"
|
385
380
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
386
|
-
none: false
|
387
381
|
requirements:
|
388
382
|
- - ">="
|
389
383
|
- !ruby/object:Gem::Version
|
390
|
-
hash: 23
|
391
|
-
segments:
|
392
|
-
- 1
|
393
|
-
- 3
|
394
|
-
- 6
|
395
384
|
version: 1.3.6
|
396
385
|
requirements: []
|
397
386
|
|
398
387
|
rubyforge_project: desk
|
399
|
-
rubygems_version:
|
388
|
+
rubygems_version: 2.0.7
|
400
389
|
signing_key:
|
401
|
-
specification_version:
|
390
|
+
specification_version: 4
|
402
391
|
summary: Ruby wrapper for the Desk.com API
|
403
392
|
test_files:
|
404
393
|
- spec/desk/api_spec.rb
|
405
394
|
- spec/desk/client/article_spec.rb
|
395
|
+
- spec/desk/client/brand_spec.rb
|
406
396
|
- spec/desk/client/case_spec.rb
|
397
|
+
- spec/desk/client/companies_spec.rb
|
398
|
+
- spec/desk/client/custom_fields_spec.rb
|
407
399
|
- spec/desk/client/customer_spec.rb
|
400
|
+
- spec/desk/client/facebook_users_spec.rb
|
401
|
+
- spec/desk/client/filter_spec.rb
|
408
402
|
- spec/desk/client/group_spec.rb
|
409
|
-
- spec/desk/client/
|
403
|
+
- spec/desk/client/inbound_mailboxes_spec.rb
|
404
|
+
- spec/desk/client/integration_url_spec.rb
|
405
|
+
- spec/desk/client/job_spec.rb
|
406
|
+
- spec/desk/client/label_spec.rb
|
410
407
|
- spec/desk/client/macro_spec.rb
|
408
|
+
- spec/desk/client/rule_spec.rb
|
409
|
+
- spec/desk/client/site_setting_spec.rb
|
410
|
+
- spec/desk/client/system_message_spec.rb
|
411
411
|
- spec/desk/client/topic_spec.rb
|
412
|
+
- spec/desk/client/twitter_account_spec.rb
|
413
|
+
- spec/desk/client/twitter_user_spec.rb
|
412
414
|
- spec/desk/client/user_spec.rb
|
413
415
|
- spec/desk/client_spec.rb
|
414
416
|
- spec/desk_spec.rb
|
415
417
|
- spec/faraday/response_spec.rb
|
416
|
-
- spec/fixtures/article
|
417
|
-
- spec/fixtures/article_create
|
418
|
-
- spec/fixtures/
|
419
|
-
- spec/fixtures/
|
420
|
-
- spec/fixtures/
|
421
|
-
- spec/fixtures/
|
422
|
-
- spec/fixtures/
|
423
|
-
- spec/fixtures/
|
424
|
-
- spec/fixtures/
|
425
|
-
- spec/fixtures/
|
426
|
-
- spec/fixtures/
|
427
|
-
- spec/fixtures/
|
428
|
-
- spec/fixtures/
|
429
|
-
- spec/fixtures/
|
430
|
-
- spec/fixtures/
|
431
|
-
- spec/fixtures/
|
432
|
-
- spec/fixtures/
|
433
|
-
- spec/fixtures/
|
434
|
-
- spec/fixtures/
|
435
|
-
- spec/fixtures/
|
436
|
-
- spec/fixtures/
|
437
|
-
- spec/fixtures/
|
438
|
-
- spec/fixtures/
|
439
|
-
- spec/fixtures/
|
440
|
-
- spec/fixtures/
|
441
|
-
- spec/fixtures/
|
442
|
-
- spec/fixtures/
|
443
|
-
- spec/fixtures/
|
444
|
-
- spec/fixtures/
|
445
|
-
- spec/fixtures/
|
446
|
-
- spec/fixtures/
|
447
|
-
- spec/fixtures/
|
448
|
-
- spec/fixtures/
|
418
|
+
- spec/fixtures/article
|
419
|
+
- spec/fixtures/article_create
|
420
|
+
- spec/fixtures/article_translation
|
421
|
+
- spec/fixtures/article_translation_create
|
422
|
+
- spec/fixtures/article_translation_update
|
423
|
+
- spec/fixtures/article_translations
|
424
|
+
- spec/fixtures/article_update
|
425
|
+
- spec/fixtures/articles
|
426
|
+
- spec/fixtures/articles_search
|
427
|
+
- spec/fixtures/brand
|
428
|
+
- spec/fixtures/brands
|
429
|
+
- spec/fixtures/case
|
430
|
+
- spec/fixtures/case_attachment
|
431
|
+
- spec/fixtures/case_attachment_create
|
432
|
+
- spec/fixtures/case_attachments
|
433
|
+
- spec/fixtures/case_create
|
434
|
+
- spec/fixtures/case_message
|
435
|
+
- spec/fixtures/case_note
|
436
|
+
- spec/fixtures/case_note_create
|
437
|
+
- spec/fixtures/case_notes
|
438
|
+
- spec/fixtures/case_replies
|
439
|
+
- spec/fixtures/case_reply
|
440
|
+
- spec/fixtures/case_reply_create
|
441
|
+
- spec/fixtures/case_reply_update
|
442
|
+
- spec/fixtures/case_update
|
443
|
+
- spec/fixtures/cases
|
444
|
+
- spec/fixtures/cases_search
|
445
|
+
- spec/fixtures/companies
|
446
|
+
- spec/fixtures/companies_search
|
447
|
+
- spec/fixtures/company
|
448
|
+
- spec/fixtures/company_create
|
449
|
+
- spec/fixtures/company_search
|
450
|
+
- spec/fixtures/company_update
|
451
|
+
- spec/fixtures/custom_field
|
452
|
+
- spec/fixtures/custom_fields
|
453
|
+
- spec/fixtures/customer
|
454
|
+
- spec/fixtures/customer_create
|
455
|
+
- spec/fixtures/customer_update
|
456
|
+
- spec/fixtures/customers
|
457
|
+
- spec/fixtures/customers_search
|
458
|
+
- spec/fixtures/facebook_user
|
459
|
+
- spec/fixtures/facebook_users
|
460
|
+
- spec/fixtures/filter
|
461
|
+
- spec/fixtures/filter_cases
|
462
|
+
- spec/fixtures/filters
|
463
|
+
- spec/fixtures/group
|
464
|
+
- spec/fixtures/group_filters
|
465
|
+
- spec/fixtures/group_users
|
466
|
+
- spec/fixtures/groups
|
467
|
+
- spec/fixtures/inbound_mailbox
|
468
|
+
- spec/fixtures/inbound_mailboxes
|
469
|
+
- spec/fixtures/integration_url
|
470
|
+
- spec/fixtures/integration_url_create
|
471
|
+
- spec/fixtures/integration_url_update
|
472
|
+
- spec/fixtures/integration_urls
|
473
|
+
- spec/fixtures/job
|
474
|
+
- spec/fixtures/job_create
|
475
|
+
- spec/fixtures/jobs
|
476
|
+
- spec/fixtures/label
|
477
|
+
- spec/fixtures/label_create
|
478
|
+
- spec/fixtures/label_update
|
479
|
+
- spec/fixtures/labels
|
480
|
+
- spec/fixtures/macro
|
481
|
+
- spec/fixtures/macro_action
|
482
|
+
- spec/fixtures/macro_action_update
|
483
|
+
- spec/fixtures/macro_actions
|
484
|
+
- spec/fixtures/macro_create
|
485
|
+
- spec/fixtures/macro_update
|
486
|
+
- spec/fixtures/macros
|
487
|
+
- spec/fixtures/rule
|
488
|
+
- spec/fixtures/rules
|
489
|
+
- spec/fixtures/site_setting
|
490
|
+
- spec/fixtures/site_settings
|
491
|
+
- spec/fixtures/system_message
|
492
|
+
- spec/fixtures/topic
|
493
|
+
- spec/fixtures/topic_create
|
494
|
+
- spec/fixtures/topic_translation
|
495
|
+
- spec/fixtures/topic_translation_create
|
496
|
+
- spec/fixtures/topic_translation_update
|
497
|
+
- spec/fixtures/topic_translations
|
498
|
+
- spec/fixtures/topic_update
|
499
|
+
- spec/fixtures/topics
|
500
|
+
- spec/fixtures/twitter_account
|
501
|
+
- spec/fixtures/twitter_account_tweet
|
502
|
+
- spec/fixtures/twitter_account_tweet_create
|
503
|
+
- spec/fixtures/twitter_account_tweets
|
504
|
+
- spec/fixtures/twitter_accounts
|
505
|
+
- spec/fixtures/twitter_user
|
506
|
+
- spec/fixtures/twitter_user_create
|
507
|
+
- spec/fixtures/twitter_users
|
508
|
+
- spec/fixtures/user
|
509
|
+
- spec/fixtures/user_preference
|
510
|
+
- spec/fixtures/user_preference_update
|
511
|
+
- spec/fixtures/user_preferences
|
512
|
+
- spec/fixtures/users
|
449
513
|
- spec/helper.rb
|
514
|
+
- spec/shared_context.rb
|
515
|
+
- spec/shared_examples.rb
|