stormpath-sdk 1.0.0.beta.7 → 1.0.0.beta.8

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.
Files changed (37) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +8 -29
  3. data/CHANGES.md +10 -0
  4. data/README.md +64 -0
  5. data/lib/stormpath-sdk.rb +5 -1
  6. data/lib/stormpath-sdk/api_key.rb +0 -3
  7. data/lib/stormpath-sdk/auth/basic_authenticator.rb +1 -1
  8. data/lib/stormpath-sdk/auth/username_password_request.rb +1 -1
  9. data/lib/stormpath-sdk/client.rb +16 -17
  10. data/lib/stormpath-sdk/data_store.rb +4 -3
  11. data/lib/stormpath-sdk/error.rb +19 -18
  12. data/lib/stormpath-sdk/http/authc/sauthc1_signer.rb +18 -28
  13. data/lib/stormpath-sdk/http/http_client_request_executor.rb +5 -16
  14. data/lib/stormpath-sdk/http/request.rb +3 -2
  15. data/lib/stormpath-sdk/http/response.rb +3 -3
  16. data/lib/stormpath-sdk/id_site/id_site_result.rb +17 -0
  17. data/lib/stormpath-sdk/resource/application.rb +35 -1
  18. data/lib/stormpath-sdk/resource/collection.rb +1 -1
  19. data/lib/stormpath-sdk/resource/directory.rb +2 -0
  20. data/lib/stormpath-sdk/resource/group.rb +1 -1
  21. data/lib/stormpath-sdk/resource/tenant.rb +2 -0
  22. data/lib/stormpath-sdk/util/assert.rb +4 -4
  23. data/lib/stormpath-sdk/version.rb +2 -2
  24. data/spec/auth/basic_authenticator_spec.rb +1 -1
  25. data/spec/auth/sauthc1_signer_spec.rb +4 -4
  26. data/spec/client_spec.rb +1 -1
  27. data/spec/data_store_spec.rb +1 -1
  28. data/spec/provider/account_resolver_spec.rb +1 -1
  29. data/spec/resource/application_spec.rb +176 -0
  30. data/spec/resource/collection_spec.rb +4 -4
  31. data/spec/resource/directory_spec.rb +18 -0
  32. data/spec/resource/group_spec.rb +11 -0
  33. data/spec/resource/tenant_spec.rb +12 -0
  34. data/spec/spec_helper.rb +5 -1
  35. data/stormpath-sdk.gemspec +1 -0
  36. metadata +61 -81
  37. data/lib/stormpath-sdk/ext/hash.rb +0 -31
@@ -230,19 +230,19 @@ describe Stormpath::Resource::Collection, :vcr do
230
230
 
231
231
  expect(directory.groups.limit(30).count).to eq(100)
232
232
 
233
- expect(directory.groups.limit(30).current_page.items.count).to eq(30)
233
+ expect(directory.groups.limit(30).current_page.size).to eq(100)
234
234
 
235
235
  expect(directory.groups.limit(30).offset(30).count).to eq(70)
236
236
 
237
- expect(directory.groups.limit(30).offset(30).current_page.items.count).to eq(30)
237
+ expect(directory.groups.limit(30).offset(30).current_page.size).to eq(100)
238
238
 
239
239
  expect(directory.groups.limit(30).offset(60).count).to eq(40)
240
240
 
241
- expect(directory.groups.limit(30).offset(60).current_page.items.count).to eq(30)
241
+ expect(directory.groups.limit(30).offset(60).current_page.size).to eq(100)
242
242
 
243
243
  expect(directory.groups.limit(30).offset(90).count).to eq(10)
244
244
 
245
- expect(directory.groups.limit(30).offset(90).current_page.items.count).to eq(10)
245
+ expect(directory.groups.limit(30).offset(90).current_page.size).to eq(100)
246
246
 
247
247
  expect(directory.groups.limit(30).map {|group| group.name }).to eq(('1'..'100').to_a.sort)
248
248
 
@@ -21,6 +21,7 @@ describe Stormpath::Resource::Directory, :vcr do
21
21
  expect(directory.tenant).to be_a Stormpath::Resource::Tenant
22
22
  expect(directory.groups).to be_a Stormpath::Resource::Collection
23
23
  expect(directory.accounts).to be_a Stormpath::Resource::Collection
24
+ expect(directory.custom_data).to be_a Stormpath::Resource::CustomData
24
25
  end
25
26
  end
26
27
 
@@ -127,6 +128,23 @@ describe Stormpath::Resource::Directory, :vcr do
127
128
 
128
129
  end
129
130
 
131
+ describe '#create_directory_with_custom_data' do
132
+ let(:directory) { test_api_client.directories.create name: random_directory_name, description: 'description_for_some_test_directory' }
133
+
134
+ after do
135
+ directory.delete if directory
136
+ end
137
+
138
+ it 'creates an directory with custom data' do
139
+ directory.custom_data["category"] = "classified"
140
+
141
+ directory.save
142
+ expect(directory.name).to eq(random_directory_name)
143
+ expect(directory.description).to eq('description_for_some_test_directory')
144
+ expect(directory.custom_data["category"]).to eq("classified")
145
+ end
146
+ end
147
+
130
148
  describe '#create_account_with_custom_data' do
131
149
  let(:directory) { test_directory }
132
150
 
@@ -26,6 +26,17 @@ describe Stormpath::Resource::Group, :vcr do
26
26
  end
27
27
  end
28
28
 
29
+ describe '#create_group_with_custom_data' do
30
+ let(:directory) { test_directory }
31
+
32
+ it 'creates a directory with custom data' do
33
+ directory.custom_data["category"] = "classified"
34
+
35
+ directory.save
36
+ expect(directory.custom_data["category"]).to eq("classified")
37
+ end
38
+ end
39
+
29
40
  describe '#add_or_remove_account' do
30
41
  context "given an account" do
31
42
 
@@ -15,6 +15,18 @@ describe Stormpath::Resource::Tenant, :vcr do
15
15
 
16
16
  expect(tenant.applications).to be_a Stormpath::Resource::Collection
17
17
  expect(tenant.directories).to be_a Stormpath::Resource::Collection
18
+ expect(tenant.custom_data).to be_a Stormpath::Resource::CustomData
19
+ end
20
+ end
21
+
22
+ describe '#create_tenant_with_custom_data' do
23
+ let(:tenant) { test_api_client.tenant }
24
+
25
+ it 'creates an tenant with custom data' do
26
+ tenant.custom_data["category"] = "classified"
27
+
28
+ tenant.save
29
+ expect(tenant.custom_data["category"]).to eq("classified")
18
30
  end
19
31
  end
20
32
 
@@ -2,12 +2,16 @@
2
2
  # it won't be able to track your files and their coverage! The SimpleCov.start must be
3
3
  # issued before any of your application code is required!
4
4
  require 'simplecov'
5
- SimpleCov.start
5
+ SimpleCov.start do
6
+ add_filter {|src| src.filename =~ /spec/ }
7
+ end
6
8
 
7
9
  require 'stormpath-sdk'
8
10
  require 'pry'
9
11
  require 'webmock/rspec'
10
12
  require 'vcr'
13
+ require 'jwt'
14
+ require 'uuidtools'
11
15
 
12
16
  Dir['./spec/support/*.rb'].each { |file| require file }
13
17
 
@@ -20,6 +20,7 @@ Gem::Specification.new do |s|
20
20
  s.add_dependency('activesupport', '>= 3.2.8')
21
21
  s.add_dependency('properties-ruby', "~> 0.0.4")
22
22
  s.add_dependency('java_properties')
23
+ s.add_dependency('jwt', '>= 1.5.0')
23
24
 
24
25
  s.add_development_dependency 'rake', '~> 0.9.2'
25
26
  s.add_development_dependency 'rspec', '~> 3.0.0'
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stormpath-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.beta.7
5
- prerelease: 6
4
+ version: 1.0.0.beta.8
6
5
  platform: ruby
7
6
  authors:
8
7
  - Stormpath, Inc
@@ -10,262 +9,244 @@ authors:
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2014-07-21 00:00:00.000000000 Z
12
+ date: 2015-07-28 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
15
  name: multi_json
17
16
  requirement: !ruby/object:Gem::Requirement
18
- none: false
19
17
  requirements:
20
- - - ! '>='
18
+ - - ">="
21
19
  - !ruby/object:Gem::Version
22
20
  version: 1.3.6
23
21
  type: :runtime
24
22
  prerelease: false
25
23
  version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
24
  requirements:
28
- - - ! '>='
25
+ - - ">="
29
26
  - !ruby/object:Gem::Version
30
27
  version: 1.3.6
31
28
  - !ruby/object:Gem::Dependency
32
29
  name: httpclient
33
30
  requirement: !ruby/object:Gem::Requirement
34
- none: false
35
31
  requirements:
36
- - - ! '>='
32
+ - - ">="
37
33
  - !ruby/object:Gem::Version
38
34
  version: 2.2.5
39
35
  type: :runtime
40
36
  prerelease: false
41
37
  version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
38
  requirements:
44
- - - ! '>='
39
+ - - ">="
45
40
  - !ruby/object:Gem::Version
46
41
  version: 2.2.5
47
42
  - !ruby/object:Gem::Dependency
48
43
  name: uuidtools
49
44
  requirement: !ruby/object:Gem::Requirement
50
- none: false
51
45
  requirements:
52
- - - ! '>='
46
+ - - ">="
53
47
  - !ruby/object:Gem::Version
54
48
  version: 2.1.3
55
49
  type: :runtime
56
50
  prerelease: false
57
51
  version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
52
  requirements:
60
- - - ! '>='
53
+ - - ">="
61
54
  - !ruby/object:Gem::Version
62
55
  version: 2.1.3
63
56
  - !ruby/object:Gem::Dependency
64
57
  name: activesupport
65
58
  requirement: !ruby/object:Gem::Requirement
66
- none: false
67
59
  requirements:
68
- - - ! '>='
60
+ - - ">="
69
61
  - !ruby/object:Gem::Version
70
62
  version: 3.2.8
71
63
  type: :runtime
72
64
  prerelease: false
73
65
  version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
66
  requirements:
76
- - - ! '>='
67
+ - - ">="
77
68
  - !ruby/object:Gem::Version
78
69
  version: 3.2.8
79
70
  - !ruby/object:Gem::Dependency
80
71
  name: properties-ruby
81
72
  requirement: !ruby/object:Gem::Requirement
82
- none: false
83
73
  requirements:
84
- - - ~>
74
+ - - "~>"
85
75
  - !ruby/object:Gem::Version
86
76
  version: 0.0.4
87
77
  type: :runtime
88
78
  prerelease: false
89
79
  version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
80
  requirements:
92
- - - ~>
81
+ - - "~>"
93
82
  - !ruby/object:Gem::Version
94
83
  version: 0.0.4
95
84
  - !ruby/object:Gem::Dependency
96
85
  name: java_properties
97
86
  requirement: !ruby/object:Gem::Requirement
98
- none: false
99
87
  requirements:
100
- - - ! '>='
88
+ - - ">="
101
89
  - !ruby/object:Gem::Version
102
90
  version: '0'
103
91
  type: :runtime
104
92
  prerelease: false
105
93
  version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
94
  requirements:
108
- - - ! '>='
95
+ - - ">="
109
96
  - !ruby/object:Gem::Version
110
97
  version: '0'
98
+ - !ruby/object:Gem::Dependency
99
+ name: jwt
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: 1.5.0
105
+ type: :runtime
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: 1.5.0
111
112
  - !ruby/object:Gem::Dependency
112
113
  name: rake
113
114
  requirement: !ruby/object:Gem::Requirement
114
- none: false
115
115
  requirements:
116
- - - ~>
116
+ - - "~>"
117
117
  - !ruby/object:Gem::Version
118
118
  version: 0.9.2
119
119
  type: :development
120
120
  prerelease: false
121
121
  version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
122
  requirements:
124
- - - ~>
123
+ - - "~>"
125
124
  - !ruby/object:Gem::Version
126
125
  version: 0.9.2
127
126
  - !ruby/object:Gem::Dependency
128
127
  name: rspec
129
128
  requirement: !ruby/object:Gem::Requirement
130
- none: false
131
129
  requirements:
132
- - - ~>
130
+ - - "~>"
133
131
  - !ruby/object:Gem::Version
134
132
  version: 3.0.0
135
133
  type: :development
136
134
  prerelease: false
137
135
  version_requirements: !ruby/object:Gem::Requirement
138
- none: false
139
136
  requirements:
140
- - - ~>
137
+ - - "~>"
141
138
  - !ruby/object:Gem::Version
142
139
  version: 3.0.0
143
140
  - !ruby/object:Gem::Dependency
144
141
  name: guard-rspec
145
142
  requirement: !ruby/object:Gem::Requirement
146
- none: false
147
143
  requirements:
148
- - - ~>
144
+ - - "~>"
149
145
  - !ruby/object:Gem::Version
150
146
  version: 4.2.10
151
147
  type: :development
152
148
  prerelease: false
153
149
  version_requirements: !ruby/object:Gem::Requirement
154
- none: false
155
150
  requirements:
156
- - - ~>
151
+ - - "~>"
157
152
  - !ruby/object:Gem::Version
158
153
  version: 4.2.10
159
154
  - !ruby/object:Gem::Dependency
160
155
  name: rack
161
156
  requirement: !ruby/object:Gem::Requirement
162
- none: false
163
157
  requirements:
164
- - - ~>
158
+ - - "~>"
165
159
  - !ruby/object:Gem::Version
166
160
  version: 1.4.1
167
161
  type: :development
168
162
  prerelease: false
169
163
  version_requirements: !ruby/object:Gem::Requirement
170
- none: false
171
164
  requirements:
172
- - - ~>
165
+ - - "~>"
173
166
  - !ruby/object:Gem::Version
174
167
  version: 1.4.1
175
168
  - !ruby/object:Gem::Dependency
176
169
  name: webmock
177
170
  requirement: !ruby/object:Gem::Requirement
178
- none: false
179
171
  requirements:
180
- - - ~>
172
+ - - "~>"
181
173
  - !ruby/object:Gem::Version
182
174
  version: 1.17.4
183
175
  type: :development
184
176
  prerelease: false
185
177
  version_requirements: !ruby/object:Gem::Requirement
186
- none: false
187
178
  requirements:
188
- - - ~>
179
+ - - "~>"
189
180
  - !ruby/object:Gem::Version
190
181
  version: 1.17.4
191
182
  - !ruby/object:Gem::Dependency
192
183
  name: simplecov
193
184
  requirement: !ruby/object:Gem::Requirement
194
- none: false
195
185
  requirements:
196
- - - ~>
186
+ - - "~>"
197
187
  - !ruby/object:Gem::Version
198
188
  version: 0.7.1
199
189
  type: :development
200
190
  prerelease: false
201
191
  version_requirements: !ruby/object:Gem::Requirement
202
- none: false
203
192
  requirements:
204
- - - ~>
193
+ - - "~>"
205
194
  - !ruby/object:Gem::Version
206
195
  version: 0.7.1
207
196
  - !ruby/object:Gem::Dependency
208
197
  name: pry
209
198
  requirement: !ruby/object:Gem::Requirement
210
- none: false
211
199
  requirements:
212
- - - ~>
200
+ - - "~>"
213
201
  - !ruby/object:Gem::Version
214
202
  version: 0.9.12.1
215
203
  type: :development
216
204
  prerelease: false
217
205
  version_requirements: !ruby/object:Gem::Requirement
218
- none: false
219
206
  requirements:
220
- - - ~>
207
+ - - "~>"
221
208
  - !ruby/object:Gem::Version
222
209
  version: 0.9.12.1
223
210
  - !ruby/object:Gem::Dependency
224
211
  name: vcr
225
212
  requirement: !ruby/object:Gem::Requirement
226
- none: false
227
213
  requirements:
228
- - - ~>
214
+ - - "~>"
229
215
  - !ruby/object:Gem::Version
230
216
  version: 2.9.2
231
217
  type: :development
232
218
  prerelease: false
233
219
  version_requirements: !ruby/object:Gem::Requirement
234
- none: false
235
220
  requirements:
236
- - - ~>
221
+ - - "~>"
237
222
  - !ruby/object:Gem::Version
238
223
  version: 2.9.2
239
224
  - !ruby/object:Gem::Dependency
240
225
  name: timecop
241
226
  requirement: !ruby/object:Gem::Requirement
242
- none: false
243
227
  requirements:
244
- - - ~>
228
+ - - "~>"
245
229
  - !ruby/object:Gem::Version
246
230
  version: 0.6.1
247
231
  type: :development
248
232
  prerelease: false
249
233
  version_requirements: !ruby/object:Gem::Requirement
250
- none: false
251
234
  requirements:
252
- - - ~>
235
+ - - "~>"
253
236
  - !ruby/object:Gem::Version
254
237
  version: 0.6.1
255
238
  - !ruby/object:Gem::Dependency
256
239
  name: redis
257
240
  requirement: !ruby/object:Gem::Requirement
258
- none: false
259
241
  requirements:
260
- - - ~>
242
+ - - "~>"
261
243
  - !ruby/object:Gem::Version
262
244
  version: 3.0.4
263
245
  type: :development
264
246
  prerelease: false
265
247
  version_requirements: !ruby/object:Gem::Requirement
266
- none: false
267
248
  requirements:
268
- - - ~>
249
+ - - "~>"
269
250
  - !ruby/object:Gem::Version
270
251
  version: 3.0.4
271
252
  description: Stormpath SDK used to interact with the Stormpath REST API
@@ -274,9 +255,9 @@ executables: []
274
255
  extensions: []
275
256
  extra_rdoc_files: []
276
257
  files:
277
- - .gitignore
278
- - .ruby-gemset
279
- - .travis.yml
258
+ - ".gitignore"
259
+ - ".ruby-gemset"
260
+ - ".travis.yml"
280
261
  - CHANGES.md
281
262
  - Gemfile
282
263
  - README.md
@@ -297,12 +278,12 @@ files:
297
278
  - lib/stormpath-sdk/client.rb
298
279
  - lib/stormpath-sdk/data_store.rb
299
280
  - lib/stormpath-sdk/error.rb
300
- - lib/stormpath-sdk/ext/hash.rb
301
281
  - lib/stormpath-sdk/http/authc/sauthc1_signer.rb
302
282
  - lib/stormpath-sdk/http/http_client_request_executor.rb
303
283
  - lib/stormpath-sdk/http/request.rb
304
284
  - lib/stormpath-sdk/http/response.rb
305
285
  - lib/stormpath-sdk/http/utils.rb
286
+ - lib/stormpath-sdk/id_site/id_site_result.rb
306
287
  - lib/stormpath-sdk/provider/account_access.rb
307
288
  - lib/stormpath-sdk/provider/account_request.rb
308
289
  - lib/stormpath-sdk/provider/account_resolver.rb
@@ -374,31 +355,30 @@ files:
374
355
  - support/api.rb
375
356
  homepage: https://github.com/stormpath/stormpath-sdk-ruby
376
357
  licenses: []
358
+ metadata: {}
377
359
  post_install_message:
378
360
  rdoc_options:
379
- - --line-numbers
380
- - --inline-source
381
- - --title
361
+ - "--line-numbers"
362
+ - "--inline-source"
363
+ - "--title"
382
364
  - stormpath-sdk
383
- - --main
365
+ - "--main"
384
366
  require_paths:
385
367
  - lib
386
368
  required_ruby_version: !ruby/object:Gem::Requirement
387
- none: false
388
369
  requirements:
389
- - - ! '>='
370
+ - - ">="
390
371
  - !ruby/object:Gem::Version
391
372
  version: '0'
392
373
  required_rubygems_version: !ruby/object:Gem::Requirement
393
- none: false
394
374
  requirements:
395
- - - ! '>'
375
+ - - ">"
396
376
  - !ruby/object:Gem::Version
397
377
  version: 1.3.1
398
378
  requirements: []
399
379
  rubyforge_project:
400
- rubygems_version: 1.8.25
380
+ rubygems_version: 2.4.6
401
381
  signing_key:
402
- specification_version: 3
382
+ specification_version: 4
403
383
  summary: Stormpath SDK
404
384
  test_files: []