mrkt 1.2.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,9 @@
1
1
  describe Mrkt::CrudPrograms do
2
- include_context 'initialized client'
2
+ include_context 'with an initialized client'
3
3
 
4
4
  describe '#browse_programs' do
5
+ subject { client.browse_programs }
6
+
5
7
  let(:response_stub) do
6
8
  {
7
9
  success: true,
@@ -30,8 +32,6 @@ describe Mrkt::CrudPrograms do
30
32
  }
31
33
  end
32
34
 
33
- subject { client.browse_programs }
34
-
35
35
  before do
36
36
  stub_request(:get, "https://#{host}/rest/asset/v1/programs.json")
37
37
  .to_return(json_stub(response_stub))
@@ -41,6 +41,8 @@ describe Mrkt::CrudPrograms do
41
41
  end
42
42
 
43
43
  describe '#get_program_by_id' do
44
+ subject { client.get_program_by_id(1107) }
45
+
44
46
  let(:response_stub) do
45
47
  {
46
48
  success: true,
@@ -76,8 +78,6 @@ describe Mrkt::CrudPrograms do
76
78
  }
77
79
  end
78
80
 
79
- subject { client.get_program_by_id(1107) }
80
-
81
81
  before do
82
82
  stub_request(:get, "https://#{host}/rest/asset/v1/program/1107.json")
83
83
  .to_return(json_stub(response_stub))
@@ -1,10 +1,12 @@
1
1
  require 'tempfile'
2
2
 
3
3
  describe Mrkt::ImportCustomObjects do
4
- include_context 'initialized client'
4
+ include_context 'with an initialized client'
5
5
  let(:custom_object) { 'car_c' }
6
6
 
7
7
  describe '#import_custom_object' do
8
+ subject { client.import_custom_object(file, custom_object) }
9
+
8
10
  let(:file) { StringIO.new }
9
11
  let(:response_stub) do
10
12
  {
@@ -19,7 +21,6 @@ describe Mrkt::ImportCustomObjects do
19
21
  ]
20
22
  }
21
23
  end
22
- subject { client.import_custom_object(file, custom_object) }
23
24
 
24
25
  before do
25
26
  stub_request(:post, "https://#{host}/bulk/v1/customobjects/#{custom_object}/import.json")
@@ -31,6 +32,8 @@ describe Mrkt::ImportCustomObjects do
31
32
  end
32
33
 
33
34
  describe '#import_custom_object_status' do
35
+ subject { client.import_custom_object_status(1, custom_object) }
36
+
34
37
  let(:id) { 1 }
35
38
  let(:response_stub) do
36
39
  {
@@ -51,7 +54,6 @@ describe Mrkt::ImportCustomObjects do
51
54
  success: true
52
55
  }
53
56
  end
54
- subject { client.import_custom_object_status(1, custom_object) }
55
57
 
56
58
  before do
57
59
  stub_request(:get, "https://#{host}/bulk/v1/customobjects/#{custom_object}/import/#{id}/status.json")
@@ -62,9 +64,10 @@ describe Mrkt::ImportCustomObjects do
62
64
  end
63
65
 
64
66
  describe '#import_custom_object_failures' do
67
+ subject { client.import_custom_object_failures(1, custom_object) }
68
+
65
69
  let(:id) { 1 }
66
70
  let(:response_stub) { '' }
67
- subject { client.import_custom_object_failures(1, custom_object) }
68
71
 
69
72
  before do
70
73
  stub_request(:get, "https://#{host}/bulk/v1/customobjects/#{custom_object}/import/#{id}/failures.json")
@@ -75,9 +78,10 @@ describe Mrkt::ImportCustomObjects do
75
78
  end
76
79
 
77
80
  describe '#import_custom_object_warnings' do
81
+ subject { client.import_custom_object_warnings(1, custom_object) }
82
+
78
83
  let(:id) { 1 }
79
84
  let(:response_stub) { '' }
80
- subject { client.import_custom_object_warnings(1, custom_object) }
81
85
 
82
86
  before do
83
87
  stub_request(:get, "https://#{host}/bulk/v1/customobjects/#{custom_object}/import/#{id}/warnings.json")
@@ -2,9 +2,11 @@ require 'csv'
2
2
  require 'tempfile'
3
3
 
4
4
  describe Mrkt::ImportLeads do
5
- include_context 'initialized client'
5
+ include_context 'with an initialized client'
6
6
 
7
7
  describe '#import_lead' do
8
+ subject { client.import_lead(tempfile) }
9
+
8
10
  let(:tempfile) { Tempfile.new(%w[import-leads csv]) }
9
11
  let(:response_stub) do
10
12
  {
@@ -18,7 +20,6 @@ describe Mrkt::ImportLeads do
18
20
  ]
19
21
  }
20
22
  end
21
- subject { client.import_lead(tempfile) }
22
23
 
23
24
  before do
24
25
  CSV.open(tempfile, 'wb') do |csv|
@@ -39,6 +40,8 @@ describe Mrkt::ImportLeads do
39
40
  end
40
41
 
41
42
  describe '#import_lead_status' do
43
+ subject { client.import_lead_status(1) }
44
+
42
45
  let(:id) { 1 }
43
46
  let(:response_stub) do
44
47
  {
@@ -56,7 +59,6 @@ describe Mrkt::ImportLeads do
56
59
  success: true
57
60
  }
58
61
  end
59
- subject { client.import_lead_status(1) }
60
62
 
61
63
  before do
62
64
  stub_request(:get, "https://#{host}/bulk/v1/leads/batch/#{id}.json")
@@ -67,9 +69,10 @@ describe Mrkt::ImportLeads do
67
69
  end
68
70
 
69
71
  describe '#import_lead_failures' do
72
+ subject { client.import_lead_failures(1) }
73
+
70
74
  let(:id) { 1 }
71
75
  let(:response_stub) { '' }
72
- subject { client.import_lead_failures(1) }
73
76
 
74
77
  before do
75
78
  stub_request(:get, "https://#{host}/bulk/v1/leads/batch/#{id}/failures.json")
@@ -80,9 +83,10 @@ describe Mrkt::ImportLeads do
80
83
  end
81
84
 
82
85
  describe '#import_lead_warnings' do
86
+ subject { client.import_lead_warnings(1) }
87
+
83
88
  let(:id) { 1 }
84
89
  let(:response_stub) { '' }
85
- subject { client.import_lead_warnings(1) }
86
90
 
87
91
  before do
88
92
  stub_request(:get, "https://#{host}/bulk/v1/leads/batch/#{id}/warnings.json")
data/spec/errors_spec.rb CHANGED
@@ -1,21 +1,19 @@
1
1
  describe Mrkt::Errors do
2
2
  describe '.find_by_response_code' do
3
- subject { described_class.find_by_response_code(code) }
3
+ subject(:actual) { described_class.find_by_response_code(code) }
4
4
 
5
- context 'when the code is' do
6
- context 'known' do
7
- let(:code) { 413 }
5
+ context 'when the code is known' do
6
+ let(:code) { 413 }
8
7
 
9
- it 'should return the mapped error class' do
10
- is_expected.to eq(Mrkt::Errors::RequestEntityTooLarge)
11
- end
8
+ it 'returns the mapped error class' do
9
+ expect(actual).to eq(Mrkt::Errors::RequestEntityTooLarge)
12
10
  end
11
+ end
13
12
 
14
- context 'unknown' do
15
- let(:code) { 7331 }
13
+ context 'when the code is unknown' do
14
+ let(:code) { 7331 }
16
15
 
17
- it { is_expected.to eq(Mrkt::Errors::Error) }
18
- end
16
+ it { is_expected.to eq(Mrkt::Errors::Error) }
19
17
  end
20
18
  end
21
19
  end
@@ -1,5 +1,7 @@
1
1
  describe Mrkt::Faraday::ParamsEncoder do
2
2
  describe '.encode' do
3
+ subject { described_class.encode(params) }
4
+
3
5
  let(:params) do
4
6
  {
5
7
  string: 'foobar',
@@ -9,16 +11,14 @@ describe Mrkt::Faraday::ParamsEncoder do
9
11
  }
10
12
  end
11
13
 
12
- subject { described_class.encode(params) }
13
-
14
14
  it { is_expected.to eq(Faraday::Utils::ParamsHash.new.merge(params.merge(array: '1,2,3')).to_query) }
15
15
  end
16
16
 
17
17
  describe '.decode' do
18
- let(:value) { 'foo=foo&bar=bar' }
19
-
20
18
  subject { described_class.decode(value) }
21
19
 
20
+ let(:value) { 'foo=foo&bar=bar' }
21
+
22
22
  it { is_expected.to eq('foo' => 'foo', 'bar' => 'bar') }
23
23
  end
24
24
  end
@@ -1,5 +1,5 @@
1
1
  describe Mrkt do
2
- include_context 'initialized client'
2
+ include_context 'with an initialized client'
3
3
 
4
4
  it { is_expected.to respond_to(:get, :post, :delete) }
5
5
  end
@@ -1,7 +1,9 @@
1
1
  require 'securerandom'
2
2
  require 'json'
3
3
 
4
- shared_context 'initialized client' do
4
+ shared_context 'with an initialized client' do
5
+ subject(:client) { Mrkt::Client.new(host: host, client_id: client_id, client_secret: client_secret) }
6
+
5
7
  let(:host) { '0-KBZ-0.mktorest.com' }
6
8
  let(:client_id) { SecureRandom.uuid }
7
9
  let(:client_secret) { SecureRandom.hex }
@@ -9,8 +11,6 @@ shared_context 'initialized client' do
9
11
  { access_token: SecureRandom.uuid, token_type: 'bearer', expires_in: 2241, scope: 'RestClient' }
10
12
  end
11
13
 
12
- subject(:client) { Mrkt::Client.new(host: host, client_id: client_id, client_secret: client_secret) }
13
-
14
14
  before do
15
15
  @authentication_request_stub = stub_request(:get, "https://#{host}/identity/oauth/token")
16
16
  .with(query: { client_id: client_id, client_secret: client_secret, grant_type: 'client_credentials' })
metadata CHANGED
@@ -1,44 +1,50 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mrkt
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - KARASZI István
8
8
  - Jacques Lemieux
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-09-13 00:00:00.000000000 Z
12
+ date: 2023-01-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: faraday
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - "~>"
18
+ - - ">="
19
+ - !ruby/object:Gem::Version
20
+ version: '1.10'
21
+ - - "<"
19
22
  - !ruby/object:Gem::Version
20
- version: '1.0'
23
+ version: '3'
21
24
  type: :runtime
22
25
  prerelease: false
23
26
  version_requirements: !ruby/object:Gem::Requirement
24
27
  requirements:
25
- - - "~>"
28
+ - - ">="
26
29
  - !ruby/object:Gem::Version
27
- version: '1.0'
30
+ version: '1.10'
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '3'
28
34
  - !ruby/object:Gem::Dependency
29
- name: faraday_middleware
35
+ name: faraday-multipart
30
36
  requirement: !ruby/object:Gem::Requirement
31
37
  requirements:
32
- - - "~>"
38
+ - - ">="
33
39
  - !ruby/object:Gem::Version
34
- version: '1.0'
40
+ version: '0'
35
41
  type: :runtime
36
42
  prerelease: false
37
43
  version_requirements: !ruby/object:Gem::Requirement
38
44
  requirements:
39
- - - "~>"
45
+ - - ">="
40
46
  - !ruby/object:Gem::Version
41
- version: '1.0'
47
+ version: '0'
42
48
  - !ruby/object:Gem::Dependency
43
49
  name: bundler
44
50
  requirement: !ruby/object:Gem::Requirement
@@ -115,14 +121,14 @@ dependencies:
115
121
  requirements:
116
122
  - - "~>"
117
123
  - !ruby/object:Gem::Version
118
- version: 1.20.0
124
+ version: 1.28.2
119
125
  type: :development
120
126
  prerelease: false
121
127
  version_requirements: !ruby/object:Gem::Requirement
122
128
  requirements:
123
129
  - - "~>"
124
130
  - !ruby/object:Gem::Version
125
- version: 1.20.0
131
+ version: 1.28.2
126
132
  - !ruby/object:Gem::Dependency
127
133
  name: rubocop-rake
128
134
  requirement: !ruby/object:Gem::Requirement
@@ -137,20 +143,34 @@ dependencies:
137
143
  - - "~>"
138
144
  - !ruby/object:Gem::Version
139
145
  version: 0.6.0
146
+ - !ruby/object:Gem::Dependency
147
+ name: rubocop-rspec
148
+ requirement: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '2.6'
153
+ type: :development
154
+ prerelease: false
155
+ version_requirements: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '2.6'
140
160
  - !ruby/object:Gem::Dependency
141
161
  name: simplecov
142
162
  requirement: !ruby/object:Gem::Requirement
143
163
  requirements:
144
164
  - - "~>"
145
165
  - !ruby/object:Gem::Version
146
- version: 0.21.2
166
+ version: 0.22.0
147
167
  type: :development
148
168
  prerelease: false
149
169
  version_requirements: !ruby/object:Gem::Requirement
150
170
  requirements:
151
171
  - - "~>"
152
172
  - !ruby/object:Gem::Version
153
- version: 0.21.2
173
+ version: 0.22.0
154
174
  - !ruby/object:Gem::Dependency
155
175
  name: webmock
156
176
  requirement: !ruby/object:Gem::Requirement
@@ -184,6 +204,8 @@ files:
184
204
  - LICENSE.txt
185
205
  - README.md
186
206
  - Rakefile
207
+ - gemfiles/faraday_1.gemfile
208
+ - gemfiles/faraday_2.gemfile
187
209
  - lib/mrkt.rb
188
210
  - lib/mrkt/concerns/authentication.rb
189
211
  - lib/mrkt/concerns/connection.rb
@@ -196,6 +218,7 @@ files:
196
218
  - lib/mrkt/concerns/crud_helpers.rb
197
219
  - lib/mrkt/concerns/crud_leads.rb
198
220
  - lib/mrkt/concerns/crud_lists.rb
221
+ - lib/mrkt/concerns/crud_program_members.rb
199
222
  - lib/mrkt/concerns/crud_programs.rb
200
223
  - lib/mrkt/concerns/import_custom_objects.rb
201
224
  - lib/mrkt/concerns/import_leads.rb
@@ -215,6 +238,7 @@ files:
215
238
  - spec/concerns/crud_custom_objects_spec.rb
216
239
  - spec/concerns/crud_leads_spec.rb
217
240
  - spec/concerns/crud_lists_spec.rb
241
+ - spec/concerns/crud_program_members_spec.rb
218
242
  - spec/concerns/crud_programs_spec.rb
219
243
  - spec/concerns/import_custom_objects_spec.rb
220
244
  - spec/concerns/import_leads_spec.rb
@@ -227,8 +251,9 @@ files:
227
251
  homepage: https://github.com/raszi/mrkt
228
252
  licenses:
229
253
  - MIT
230
- metadata: {}
231
- post_install_message:
254
+ metadata:
255
+ rubygems_mfa_required: 'true'
256
+ post_install_message:
232
257
  rdoc_options: []
233
258
  require_paths:
234
259
  - lib
@@ -236,15 +261,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
236
261
  requirements:
237
262
  - - ">="
238
263
  - !ruby/object:Gem::Version
239
- version: '2.5'
264
+ version: '2.6'
240
265
  required_rubygems_version: !ruby/object:Gem::Requirement
241
266
  requirements:
242
267
  - - ">="
243
268
  - !ruby/object:Gem::Version
244
269
  version: '0'
245
270
  requirements: []
246
- rubygems_version: 3.1.4
247
- signing_key:
271
+ rubygems_version: 3.3.7
272
+ signing_key:
248
273
  specification_version: 4
249
274
  summary: Marketo REST API Facade
250
275
  test_files:
@@ -257,6 +282,7 @@ test_files:
257
282
  - spec/concerns/crud_custom_objects_spec.rb
258
283
  - spec/concerns/crud_leads_spec.rb
259
284
  - spec/concerns/crud_lists_spec.rb
285
+ - spec/concerns/crud_program_members_spec.rb
260
286
  - spec/concerns/crud_programs_spec.rb
261
287
  - spec/concerns/import_custom_objects_spec.rb
262
288
  - spec/concerns/import_leads_spec.rb