crowd-client 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm use 1.9.2
data/lib/crowd-client.rb CHANGED
@@ -39,6 +39,20 @@ module Crowd
39
39
  raise Exception::UnkownError if response.status != 204
40
40
  end
41
41
 
42
+ def user(token)
43
+ response = connection.get("session/#{token}") do |request|
44
+ request.params[:expand] = 'user'
45
+ end
46
+ response.body['user']
47
+ end
48
+
49
+ def user_groups(username)
50
+ response = connection.get("user/group/nested") do |request|
51
+ request.params[:username] = username
52
+ end
53
+ response.body['groups'].collect{|group| group['name']}
54
+ end
55
+
42
56
  def in_group?(username, group_name)
43
57
  response = connection.get("user/group/nested") do |request|
44
58
  request.params[:username] = username
@@ -1,5 +1,5 @@
1
1
  module Crowd
2
2
  module Client
3
- VERSION = "0.0.3"
3
+ VERSION = "0.0.4"
4
4
  end
5
5
  end
@@ -1,334 +1,9 @@
1
1
  ---
2
- - !ruby/struct:VCR::HTTPInteraction
3
- request: !ruby/struct:VCR::Request
4
- method: :get
5
- uri: http://127.0.0.1:8095/user/group/nested
6
- body: !!null
7
- headers:
8
- accept:
9
- - application/json
10
- authorization:
11
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
12
- username:
13
- - user@example.com
14
- groupname:
15
- - MyGroup
16
- response: !ruby/struct:VCR::Response
17
- status: !ruby/struct:VCR::ResponseStatus
18
- code: 404
19
- message: Not Found
20
- headers:
21
- server:
22
- - Apache-Coyote/1.1
23
- content-type:
24
- - text/html;charset=utf-8
25
- content-length:
26
- - '1006'
27
- date:
28
- - Mon, 24 Oct 2011 17:41:27 GMT
29
- body: ! '<html><head><title>Apache Tomcat/6.0.32 - Error report</title><style><!--H1
30
- {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;}
31
- H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;}
32
- H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;}
33
- BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;}
34
- B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;}
35
- P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A
36
- {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP
37
- Status 404 - /user/group/nested</h1><HR size="1" noshade="noshade"><p><b>type</b>
38
- Status report</p><p><b>message</b> <u>/user/group/nested</u></p><p><b>description</b>
39
- <u>The requested resource (/user/group/nested) is not available.</u></p><HR
40
- size="1" noshade="noshade"><h3>Apache Tomcat/6.0.32</h3></body></html>'
41
- http_version: '1.1'
42
- - !ruby/struct:VCR::HTTPInteraction
43
- request: !ruby/struct:VCR::Request
44
- method: :post
45
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/akoqHwkAqtQHtriHaHKfwA00
46
- body: ! '{}'
47
- headers:
48
- accept:
49
- - application/json
50
- authorization:
51
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
52
- content-type:
53
- - application/json
54
- response: !ruby/struct:VCR::Response
55
- status: !ruby/struct:VCR::ResponseStatus
56
- code: 200
57
- message: OK
58
- headers:
59
- server:
60
- - Apache-Coyote/1.1
61
- x-embedded-crowd-version:
62
- - Crowd/2.3.3
63
- x-crowd-user-management-version:
64
- - '1.1'
65
- set-cookie:
66
- - JSESSIONID=E3B16E4957759AA15D493512E36E5DDE; Path=/crowd
67
- cache-control:
68
- - no-cache, no-store, no-transform
69
- content-type:
70
- - application/json
71
- transfer-encoding:
72
- - chunked
73
- date:
74
- - Mon, 24 Oct 2011 17:41:27 GMT
75
- body: ! '{"expand":"user","token":"akoqHwkAqtQHtriHaHKfwA00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/akoqHwkAqtQHtriHaHKfwA00","rel":"self"}}'
76
- http_version: '1.1'
77
- - !ruby/struct:VCR::HTTPInteraction
78
- request: !ruby/struct:VCR::Request
79
- method: :delete
80
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/akoqHwkAqtQHtriHaHKfwA00
81
- body: !!null
82
- headers:
83
- accept:
84
- - application/json
85
- authorization:
86
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
87
- response: !ruby/struct:VCR::Response
88
- status: !ruby/struct:VCR::ResponseStatus
89
- code: 204
90
- message: No Content
91
- headers:
92
- server:
93
- - Apache-Coyote/1.1
94
- x-embedded-crowd-version:
95
- - Crowd/2.3.3
96
- x-crowd-user-management-version:
97
- - '1.1'
98
- set-cookie:
99
- - JSESSIONID=7DB3CA4FD107004EBD7B80A3444A5DF5; Path=/crowd
100
- date:
101
- - Mon, 24 Oct 2011 17:41:27 GMT
102
- body: !!null
103
- http_version: '1.1'
104
- - !ruby/struct:VCR::HTTPInteraction
105
- request: !ruby/struct:VCR::Request
106
- method: :post
107
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/akoqHwkAqtQHtriHaHKfwA00
108
- body: ! '{}'
109
- headers:
110
- accept:
111
- - application/json
112
- authorization:
113
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
114
- content-type:
115
- - application/json
116
- response: !ruby/struct:VCR::Response
117
- status: !ruby/struct:VCR::ResponseStatus
118
- code: 404
119
- message: Not Found
120
- headers:
121
- server:
122
- - Apache-Coyote/1.1
123
- x-embedded-crowd-version:
124
- - Crowd/2.3.3
125
- x-crowd-user-management-version:
126
- - '1.1'
127
- set-cookie:
128
- - JSESSIONID=3F4377B74E289159EB2093D7DBBA35A5; Path=/crowd
129
- content-type:
130
- - application/json
131
- transfer-encoding:
132
- - chunked
133
- date:
134
- - Mon, 24 Oct 2011 17:41:27 GMT
135
- body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
136
- http_version: '1.1'
137
- - !ruby/struct:VCR::HTTPInteraction
138
- request: !ruby/struct:VCR::Request
139
- method: :post
140
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/cMPdTh8dEd586Z8pFpoc8g00
141
- body: ! '{}'
142
- headers:
143
- accept:
144
- - application/json
145
- authorization:
146
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
147
- content-type:
148
- - application/json
149
- response: !ruby/struct:VCR::Response
150
- status: !ruby/struct:VCR::ResponseStatus
151
- code: 200
152
- message: OK
153
- headers:
154
- server:
155
- - Apache-Coyote/1.1
156
- x-embedded-crowd-version:
157
- - Crowd/2.3.3
158
- x-crowd-user-management-version:
159
- - '1.1'
160
- set-cookie:
161
- - JSESSIONID=E190FCEDC0E0F3EC04A4110F336716DA; Path=/crowd
162
- cache-control:
163
- - no-cache, no-store, no-transform
164
- content-type:
165
- - application/json
166
- transfer-encoding:
167
- - chunked
168
- date:
169
- - Mon, 24 Oct 2011 17:42:22 GMT
170
- body: ! '{"expand":"user","token":"cMPdTh8dEd586Z8pFpoc8g00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/cMPdTh8dEd586Z8pFpoc8g00","rel":"self"}}'
171
- http_version: '1.1'
172
- - !ruby/struct:VCR::HTTPInteraction
173
- request: !ruby/struct:VCR::Request
174
- method: :delete
175
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/cMPdTh8dEd586Z8pFpoc8g00
176
- body: !!null
177
- headers:
178
- accept:
179
- - application/json
180
- authorization:
181
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
182
- response: !ruby/struct:VCR::Response
183
- status: !ruby/struct:VCR::ResponseStatus
184
- code: 204
185
- message: No Content
186
- headers:
187
- server:
188
- - Apache-Coyote/1.1
189
- x-embedded-crowd-version:
190
- - Crowd/2.3.3
191
- x-crowd-user-management-version:
192
- - '1.1'
193
- set-cookie:
194
- - JSESSIONID=EF59322E28B415D3606CAE145B9D44A8; Path=/crowd
195
- date:
196
- - Mon, 24 Oct 2011 17:42:22 GMT
197
- body: !!null
198
- http_version: '1.1'
199
- - !ruby/struct:VCR::HTTPInteraction
200
- request: !ruby/struct:VCR::Request
201
- method: :post
202
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/cMPdTh8dEd586Z8pFpoc8g00
203
- body: ! '{}'
204
- headers:
205
- accept:
206
- - application/json
207
- authorization:
208
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
209
- content-type:
210
- - application/json
211
- response: !ruby/struct:VCR::Response
212
- status: !ruby/struct:VCR::ResponseStatus
213
- code: 404
214
- message: Not Found
215
- headers:
216
- server:
217
- - Apache-Coyote/1.1
218
- x-embedded-crowd-version:
219
- - Crowd/2.3.3
220
- x-crowd-user-management-version:
221
- - '1.1'
222
- set-cookie:
223
- - JSESSIONID=905E33DD1C4EE45752732C847045D273; Path=/crowd
224
- content-type:
225
- - application/json
226
- transfer-encoding:
227
- - chunked
228
- date:
229
- - Mon, 24 Oct 2011 17:42:22 GMT
230
- body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
231
- http_version: '1.1'
232
- - !ruby/struct:VCR::HTTPInteraction
233
- request: !ruby/struct:VCR::Request
234
- method: :post
235
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/PY2wAuVlJcwulTnBP5FIbQ00
236
- body: ! '{}'
237
- headers:
238
- accept:
239
- - application/json
240
- authorization:
241
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
242
- content-type:
243
- - application/json
244
- response: !ruby/struct:VCR::Response
245
- status: !ruby/struct:VCR::ResponseStatus
246
- code: 200
247
- message: OK
248
- headers:
249
- server:
250
- - Apache-Coyote/1.1
251
- x-embedded-crowd-version:
252
- - Crowd/2.3.3
253
- x-crowd-user-management-version:
254
- - '1.1'
255
- set-cookie:
256
- - JSESSIONID=79CEC57B4545DFB4CEEF4DBFA12EF484; Path=/crowd
257
- cache-control:
258
- - no-cache, no-store, no-transform
259
- content-type:
260
- - application/json
261
- transfer-encoding:
262
- - chunked
263
- date:
264
- - Mon, 24 Oct 2011 17:42:59 GMT
265
- body: ! '{"expand":"user","token":"PY2wAuVlJcwulTnBP5FIbQ00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/PY2wAuVlJcwulTnBP5FIbQ00","rel":"self"}}'
266
- http_version: '1.1'
267
- - !ruby/struct:VCR::HTTPInteraction
268
- request: !ruby/struct:VCR::Request
269
- method: :delete
270
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/PY2wAuVlJcwulTnBP5FIbQ00
271
- body: !!null
272
- headers:
273
- accept:
274
- - application/json
275
- authorization:
276
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
277
- response: !ruby/struct:VCR::Response
278
- status: !ruby/struct:VCR::ResponseStatus
279
- code: 204
280
- message: No Content
281
- headers:
282
- server:
283
- - Apache-Coyote/1.1
284
- x-embedded-crowd-version:
285
- - Crowd/2.3.3
286
- x-crowd-user-management-version:
287
- - '1.1'
288
- set-cookie:
289
- - JSESSIONID=B1A18D07B87E284D8C336656294181AC; Path=/crowd
290
- date:
291
- - Mon, 24 Oct 2011 17:42:59 GMT
292
- body: !!null
293
- http_version: '1.1'
294
- - !ruby/struct:VCR::HTTPInteraction
295
- request: !ruby/struct:VCR::Request
296
- method: :post
297
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/PY2wAuVlJcwulTnBP5FIbQ00
298
- body: ! '{}'
299
- headers:
300
- accept:
301
- - application/json
302
- authorization:
303
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
304
- content-type:
305
- - application/json
306
- response: !ruby/struct:VCR::Response
307
- status: !ruby/struct:VCR::ResponseStatus
308
- code: 404
309
- message: Not Found
310
- headers:
311
- server:
312
- - Apache-Coyote/1.1
313
- x-embedded-crowd-version:
314
- - Crowd/2.3.3
315
- x-crowd-user-management-version:
316
- - '1.1'
317
- set-cookie:
318
- - JSESSIONID=CF4BEA4A9616CFCBD6ED5A94909F1A1E; Path=/crowd
319
- content-type:
320
- - application/json
321
- transfer-encoding:
322
- - chunked
323
- date:
324
- - Mon, 24 Oct 2011 17:43:00 GMT
325
- body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
326
- http_version: '1.1'
327
2
  - !ruby/struct:VCR::HTTPInteraction
328
3
  request: !ruby/struct:VCR::Request
329
4
  method: :post
330
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/P0dncW093f0cOMGCd0OG4A00
331
- body: ! '{}'
5
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session
6
+ body: ! '{"username":"user@example.com","password":"wrong_password"}'
332
7
  headers:
333
8
  accept:
334
9
  - application/json
@@ -338,8 +13,8 @@
338
13
  - application/json
339
14
  response: !ruby/struct:VCR::Response
340
15
  status: !ruby/struct:VCR::ResponseStatus
341
- code: 200
342
- message: OK
16
+ code: 400
17
+ message: Bad Request
343
18
  headers:
344
19
  server:
345
20
  - Apache-Coyote/1.1
@@ -348,49 +23,21 @@
348
23
  x-crowd-user-management-version:
349
24
  - '1.1'
350
25
  set-cookie:
351
- - JSESSIONID=4E1BA767A1A41ED5E73D48E52A1EC23F; Path=/crowd
352
- cache-control:
353
- - no-cache, no-store, no-transform
26
+ - JSESSIONID=9550A083BC145885EA625E4EA0319F28; Path=/crowd
354
27
  content-type:
355
28
  - application/json
356
29
  transfer-encoding:
357
30
  - chunked
358
31
  date:
359
- - Mon, 24 Oct 2011 17:45:16 GMT
360
- body: ! '{"expand":"user","token":"P0dncW093f0cOMGCd0OG4A00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/P0dncW093f0cOMGCd0OG4A00","rel":"self"}}'
361
- http_version: '1.1'
362
- - !ruby/struct:VCR::HTTPInteraction
363
- request: !ruby/struct:VCR::Request
364
- method: :delete
365
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/P0dncW093f0cOMGCd0OG4A00
366
- body: !!null
367
- headers:
368
- accept:
369
- - application/json
370
- authorization:
371
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
372
- response: !ruby/struct:VCR::Response
373
- status: !ruby/struct:VCR::ResponseStatus
374
- code: 204
375
- message: No Content
376
- headers:
377
- server:
378
- - Apache-Coyote/1.1
379
- x-embedded-crowd-version:
380
- - Crowd/2.3.3
381
- x-crowd-user-management-version:
382
- - '1.1'
383
- set-cookie:
384
- - JSESSIONID=A7D101ABF814F975C9012762F223CCF2; Path=/crowd
385
- date:
386
- - Mon, 24 Oct 2011 17:45:16 GMT
387
- body: !!null
32
+ - Mon, 24 Oct 2011 18:58:17 GMT
33
+ body: ! '{"reason":"INVALID_USER_AUTHENTICATION","message":"Failed to authenticate
34
+ principal, password was invalid"}'
388
35
  http_version: '1.1'
389
36
  - !ruby/struct:VCR::HTTPInteraction
390
37
  request: !ruby/struct:VCR::Request
391
38
  method: :post
392
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/P0dncW093f0cOMGCd0OG4A00
393
- body: ! '{}'
39
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session
40
+ body: ! '{"username":"inactive_user@example.com","password":"password"}'
394
41
  headers:
395
42
  accept:
396
43
  - application/json
@@ -400,8 +47,8 @@
400
47
  - application/json
401
48
  response: !ruby/struct:VCR::Response
402
49
  status: !ruby/struct:VCR::ResponseStatus
403
- code: 404
404
- message: Not Found
50
+ code: 400
51
+ message: Bad Request
405
52
  headers:
406
53
  server:
407
54
  - Apache-Coyote/1.1
@@ -410,27 +57,26 @@
410
57
  x-crowd-user-management-version:
411
58
  - '1.1'
412
59
  set-cookie:
413
- - JSESSIONID=AC6FE680BACF3FA7A97E246C684C2F1D; Path=/crowd
60
+ - JSESSIONID=538F8C6791D51CC4B635EAF46E493691; Path=/crowd
414
61
  content-type:
415
62
  - application/json
416
63
  transfer-encoding:
417
64
  - chunked
418
65
  date:
419
- - Mon, 24 Oct 2011 17:45:16 GMT
420
- body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
66
+ - Mon, 24 Oct 2011 18:58:17 GMT
67
+ body: ! '{"reason":"INACTIVE_ACCOUNT","message":"Account with name <inactive_user@example.com>
68
+ is inactive"}'
421
69
  http_version: '1.1'
422
70
  - !ruby/struct:VCR::HTTPInteraction
423
71
  request: !ruby/struct:VCR::Request
424
- method: :post
425
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/USsWljgK06dsd0DHDBnVMA00
426
- body: ! '{}'
72
+ method: :get
73
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested?groupname=MyGroup&username=user@example.com
74
+ body: !!null
427
75
  headers:
428
76
  accept:
429
77
  - application/json
430
78
  authorization:
431
79
  - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
432
- content-type:
433
- - application/json
434
80
  response: !ruby/struct:VCR::Response
435
81
  status: !ruby/struct:VCR::ResponseStatus
436
82
  code: 200
@@ -443,56 +89,25 @@
443
89
  x-crowd-user-management-version:
444
90
  - '1.1'
445
91
  set-cookie:
446
- - JSESSIONID=74FB1546A6B6F474085E830B9D6F973D; Path=/crowd
447
- cache-control:
448
- - no-cache, no-store, no-transform
92
+ - JSESSIONID=1E1046E9638FBC0A227A24735412AC24; Path=/crowd
449
93
  content-type:
450
94
  - application/json
451
95
  transfer-encoding:
452
96
  - chunked
453
97
  date:
454
- - Mon, 24 Oct 2011 17:46:16 GMT
455
- body: ! '{"expand":"user","token":"USsWljgK06dsd0DHDBnVMA00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/USsWljgK06dsd0DHDBnVMA00","rel":"self"}}'
98
+ - Mon, 24 Oct 2011 18:58:17 GMT
99
+ body: ! '{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/group?groupname=MyGroup","rel":"self"},"name":"MyGroup"}'
456
100
  http_version: '1.1'
457
101
  - !ruby/struct:VCR::HTTPInteraction
458
102
  request: !ruby/struct:VCR::Request
459
- method: :delete
460
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/USsWljgK06dsd0DHDBnVMA00
461
- body: !!null
462
- headers:
463
- accept:
464
- - application/json
465
- authorization:
466
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
467
- response: !ruby/struct:VCR::Response
468
- status: !ruby/struct:VCR::ResponseStatus
469
- code: 204
470
- message: No Content
471
- headers:
472
- server:
473
- - Apache-Coyote/1.1
474
- x-embedded-crowd-version:
475
- - Crowd/2.3.3
476
- x-crowd-user-management-version:
477
- - '1.1'
478
- set-cookie:
479
- - JSESSIONID=486D79AB6412A27EAF225AA8FD0A8DAE; Path=/crowd
480
- date:
481
- - Mon, 24 Oct 2011 17:46:16 GMT
103
+ method: :get
104
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested?groupname=OtherGroup&username=user@example.com
482
105
  body: !!null
483
- http_version: '1.1'
484
- - !ruby/struct:VCR::HTTPInteraction
485
- request: !ruby/struct:VCR::Request
486
- method: :post
487
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/USsWljgK06dsd0DHDBnVMA00
488
- body: ! '{}'
489
106
  headers:
490
107
  accept:
491
108
  - application/json
492
109
  authorization:
493
110
  - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
494
- content-type:
495
- - application/json
496
111
  response: !ruby/struct:VCR::Response
497
112
  status: !ruby/struct:VCR::ResponseStatus
498
113
  code: 404
@@ -505,63 +120,26 @@
505
120
  x-crowd-user-management-version:
506
121
  - '1.1'
507
122
  set-cookie:
508
- - JSESSIONID=A3950A88E6EE8FC4CAFEF3AABB5C86CC; Path=/crowd
123
+ - JSESSIONID=5D83C50BAD0AB7EB1CD1AF59D0C3B528; Path=/crowd
509
124
  content-type:
510
125
  - application/json
511
126
  transfer-encoding:
512
127
  - chunked
513
128
  date:
514
- - Mon, 24 Oct 2011 17:46:17 GMT
515
- body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
129
+ - Mon, 24 Oct 2011 18:58:17 GMT
130
+ body: ! '{"reason":"MEMBERSHIP_NOT_FOUND","message":"The child entity <user@example.com>
131
+ is not a member of the parent <OtherGroup>"}'
516
132
  http_version: '1.1'
517
133
  - !ruby/struct:VCR::HTTPInteraction
518
134
  request: !ruby/struct:VCR::Request
519
135
  method: :get
520
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested
136
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00?expand=user
521
137
  body: !!null
522
138
  headers:
523
139
  accept:
524
140
  - application/json
525
141
  authorization:
526
142
  - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
527
- username:
528
- - user@example.com
529
- groupname:
530
- - MyGroup
531
- response: !ruby/struct:VCR::Response
532
- status: !ruby/struct:VCR::ResponseStatus
533
- code: 400
534
- message: Bad Request
535
- headers:
536
- server:
537
- - Apache-Coyote/1.1
538
- x-embedded-crowd-version:
539
- - Crowd/2.3.3
540
- x-crowd-user-management-version:
541
- - '1.1'
542
- set-cookie:
543
- - JSESSIONID=504AEE176C5C63D321513207BB9E55DB; Path=/crowd
544
- content-type:
545
- - application/json
546
- transfer-encoding:
547
- - chunked
548
- date:
549
- - Mon, 24 Oct 2011 17:46:48 GMT
550
- body: ! '{"reason":"ILLEGAL_ARGUMENT","message":"username query parameter must
551
- be given"}'
552
- http_version: '1.1'
553
- - !ruby/struct:VCR::HTTPInteraction
554
- request: !ruby/struct:VCR::Request
555
- method: :post
556
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/XZ0sHLGWuTFoIjwNFa1eWw00
557
- body: ! '{}'
558
- headers:
559
- accept:
560
- - application/json
561
- authorization:
562
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
563
- content-type:
564
- - application/json
565
143
  response: !ruby/struct:VCR::Response
566
144
  status: !ruby/struct:VCR::ResponseStatus
567
145
  code: 200
@@ -574,149 +152,20 @@
574
152
  x-crowd-user-management-version:
575
153
  - '1.1'
576
154
  set-cookie:
577
- - JSESSIONID=79278EC3A1B5E22593BC068AC5370043; Path=/crowd
578
- cache-control:
579
- - no-cache, no-store, no-transform
580
- content-type:
581
- - application/json
582
- transfer-encoding:
583
- - chunked
584
- date:
585
- - Mon, 24 Oct 2011 17:51:35 GMT
586
- body: ! '{"expand":"user","token":"XZ0sHLGWuTFoIjwNFa1eWw00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/XZ0sHLGWuTFoIjwNFa1eWw00","rel":"self"}}'
587
- http_version: '1.1'
588
- - !ruby/struct:VCR::HTTPInteraction
589
- request: !ruby/struct:VCR::Request
590
- method: :delete
591
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/XZ0sHLGWuTFoIjwNFa1eWw00
592
- body: !!null
593
- headers:
594
- accept:
595
- - application/json
596
- authorization:
597
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
598
- response: !ruby/struct:VCR::Response
599
- status: !ruby/struct:VCR::ResponseStatus
600
- code: 204
601
- message: No Content
602
- headers:
603
- server:
604
- - Apache-Coyote/1.1
605
- x-embedded-crowd-version:
606
- - Crowd/2.3.3
607
- x-crowd-user-management-version:
608
- - '1.1'
609
- set-cookie:
610
- - JSESSIONID=7668AD93346DA50BC804F80498E70891; Path=/crowd
611
- date:
612
- - Mon, 24 Oct 2011 17:51:35 GMT
613
- body: !!null
614
- http_version: '1.1'
615
- - !ruby/struct:VCR::HTTPInteraction
616
- request: !ruby/struct:VCR::Request
617
- method: :post
618
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/XZ0sHLGWuTFoIjwNFa1eWw00
619
- body: ! '{}'
620
- headers:
621
- accept:
622
- - application/json
623
- authorization:
624
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
625
- content-type:
626
- - application/json
627
- response: !ruby/struct:VCR::Response
628
- status: !ruby/struct:VCR::ResponseStatus
629
- code: 404
630
- message: Not Found
631
- headers:
632
- server:
633
- - Apache-Coyote/1.1
634
- x-embedded-crowd-version:
635
- - Crowd/2.3.3
636
- x-crowd-user-management-version:
637
- - '1.1'
638
- set-cookie:
639
- - JSESSIONID=32F4E96FE6D897D0D98BE42890CC6770; Path=/crowd
640
- content-type:
641
- - application/json
642
- transfer-encoding:
643
- - chunked
644
- date:
645
- - Mon, 24 Oct 2011 17:51:35 GMT
646
- body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
647
- http_version: '1.1'
648
- - !ruby/struct:VCR::HTTPInteraction
649
- request: !ruby/struct:VCR::Request
650
- method: :post
651
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session
652
- body: ! '{"username":"user@example.com","password":"wrong_password"}'
653
- headers:
654
- accept:
655
- - application/json
656
- authorization:
657
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
658
- content-type:
659
- - application/json
660
- response: !ruby/struct:VCR::Response
661
- status: !ruby/struct:VCR::ResponseStatus
662
- code: 400
663
- message: Bad Request
664
- headers:
665
- server:
666
- - Apache-Coyote/1.1
667
- x-embedded-crowd-version:
668
- - Crowd/2.3.3
669
- x-crowd-user-management-version:
670
- - '1.1'
671
- set-cookie:
672
- - JSESSIONID=8377CD6C163BF4054E8B7BAE067A2C54; Path=/crowd
673
- content-type:
674
- - application/json
675
- transfer-encoding:
676
- - chunked
677
- date:
678
- - Mon, 24 Oct 2011 17:51:58 GMT
679
- body: ! '{"reason":"INVALID_USER_AUTHENTICATION","message":"Failed to authenticate
680
- principal, password was invalid"}'
681
- http_version: '1.1'
682
- - !ruby/struct:VCR::HTTPInteraction
683
- request: !ruby/struct:VCR::Request
684
- method: :post
685
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session
686
- body: ! '{"username":"inactive_user@example.com","password":"password"}'
687
- headers:
688
- accept:
689
- - application/json
690
- authorization:
691
- - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
692
- content-type:
693
- - application/json
694
- response: !ruby/struct:VCR::Response
695
- status: !ruby/struct:VCR::ResponseStatus
696
- code: 400
697
- message: Bad Request
698
- headers:
699
- server:
700
- - Apache-Coyote/1.1
701
- x-embedded-crowd-version:
702
- - Crowd/2.3.3
703
- x-crowd-user-management-version:
704
- - '1.1'
705
- set-cookie:
706
- - JSESSIONID=74CD3F4173D9E523E64C021D4DB2F02F; Path=/crowd
155
+ - JSESSIONID=157F91CED1028584293EF2E88508B6AC; Path=/crowd
707
156
  content-type:
708
157
  - application/json
709
158
  transfer-encoding:
710
159
  - chunked
711
160
  date:
712
- - Mon, 24 Oct 2011 17:51:58 GMT
713
- body: ! '{"reason":"INACTIVE_ACCOUNT","message":"Account with name <inactive_user@example.com>
714
- is inactive"}'
161
+ - Mon, 24 Oct 2011 18:58:17 GMT
162
+ body: ! '{"expand":"user","token":"HRz7gjbhx0vl6QnYRHKDjQ00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com","first-name":"Example","last-name":"User","display-name":"Example
163
+ User","email":"user@example.com","password":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/password?username=user@example.com","rel":"edit"}},"active":true,"attributes":{"attributes":[],"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/attribute?username=user@example.com","rel":"self"}}},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00","rel":"self"}}'
715
164
  http_version: '1.1'
716
165
  - !ruby/struct:VCR::HTTPInteraction
717
166
  request: !ruby/struct:VCR::Request
718
167
  method: :get
719
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested?groupname=MyGroup&username=user@example.com
168
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested?username=user@example.com
720
169
  body: !!null
721
170
  headers:
722
171
  accept:
@@ -735,19 +184,19 @@
735
184
  x-crowd-user-management-version:
736
185
  - '1.1'
737
186
  set-cookie:
738
- - JSESSIONID=58A2FA47A0D6E4CC8F2F5F10F9175E31; Path=/crowd
187
+ - JSESSIONID=1D4201195A8CDA7F90F1AF4CA6442A53; Path=/crowd
739
188
  content-type:
740
189
  - application/json
741
190
  transfer-encoding:
742
191
  - chunked
743
192
  date:
744
- - Mon, 24 Oct 2011 17:51:58 GMT
745
- body: ! '{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/group?groupname=MyGroup","rel":"self"},"name":"MyGroup"}'
193
+ - Mon, 24 Oct 2011 18:58:17 GMT
194
+ body: ! '{"expand":"group","groups":[{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/group?groupname=MyGroup","rel":"self"},"name":"MyGroup"},{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/group?groupname=users","rel":"self"},"name":"users"}]}'
746
195
  http_version: '1.1'
747
196
  - !ruby/struct:VCR::HTTPInteraction
748
197
  request: !ruby/struct:VCR::Request
749
198
  method: :get
750
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested?groupname=OtherGroup&username=user@example.com
199
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/user/group/nested?username=user@example.com
751
200
  body: !!null
752
201
  headers:
753
202
  accept:
@@ -756,8 +205,8 @@
756
205
  - Basic YXBwbGljYXRpb246cGFzc3dvcmQ=
757
206
  response: !ruby/struct:VCR::Response
758
207
  status: !ruby/struct:VCR::ResponseStatus
759
- code: 404
760
- message: Not Found
208
+ code: 200
209
+ message: OK
761
210
  headers:
762
211
  server:
763
212
  - Apache-Coyote/1.1
@@ -766,15 +215,14 @@
766
215
  x-crowd-user-management-version:
767
216
  - '1.1'
768
217
  set-cookie:
769
- - JSESSIONID=8AEE3C12707576D28A4D88339E639054; Path=/crowd
218
+ - JSESSIONID=D475E1A06E78071C5AB66C48FCEBA727; Path=/crowd
770
219
  content-type:
771
220
  - application/json
772
221
  transfer-encoding:
773
222
  - chunked
774
223
  date:
775
- - Mon, 24 Oct 2011 17:51:58 GMT
776
- body: ! '{"reason":"MEMBERSHIP_NOT_FOUND","message":"The child entity <user@example.com>
777
- is not a member of the parent <OtherGroup>"}'
224
+ - Mon, 24 Oct 2011 18:58:18 GMT
225
+ body: ! '{"expand":"group","groups":[{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/group?groupname=MyGroup","rel":"self"},"name":"MyGroup"},{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/group?groupname=users","rel":"self"},"name":"users"}]}'
778
226
  http_version: '1.1'
779
227
  - !ruby/struct:VCR::HTTPInteraction
780
228
  request: !ruby/struct:VCR::Request
@@ -800,23 +248,23 @@
800
248
  x-crowd-user-management-version:
801
249
  - '1.1'
802
250
  set-cookie:
803
- - JSESSIONID=30FA13CD6003863CB75FF12D46496901; Path=/crowd
251
+ - JSESSIONID=DE53C317530856E2808D9A877345941A; Path=/crowd
804
252
  cache-control:
805
253
  - no-cache, no-store, no-transform
806
254
  location:
807
- - http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/5Q4uuXK0ix464NwJOGvCbA00
255
+ - http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00
808
256
  content-type:
809
257
  - application/json
810
258
  transfer-encoding:
811
259
  - chunked
812
260
  date:
813
- - Mon, 24 Oct 2011 17:51:58 GMT
814
- body: ! '{"expand":"user","token":"5Q4uuXK0ix464NwJOGvCbA00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/5Q4uuXK0ix464NwJOGvCbA00","rel":"self"}}'
261
+ - Mon, 24 Oct 2011 18:58:18 GMT
262
+ body: ! '{"expand":"user","token":"HRz7gjbhx0vl6QnYRHKDjQ00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00","rel":"self"}}'
815
263
  http_version: '1.1'
816
264
  - !ruby/struct:VCR::HTTPInteraction
817
265
  request: !ruby/struct:VCR::Request
818
266
  method: :post
819
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/5Q4uuXK0ix464NwJOGvCbA00
267
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00
820
268
  body: ! '{}'
821
269
  headers:
822
270
  accept:
@@ -837,7 +285,7 @@
837
285
  x-crowd-user-management-version:
838
286
  - '1.1'
839
287
  set-cookie:
840
- - JSESSIONID=0AB74E9852438A71130B8A32654D9E9C; Path=/crowd
288
+ - JSESSIONID=8DE379BB9A6B565E8A85E42830D2C2CF; Path=/crowd
841
289
  cache-control:
842
290
  - no-cache, no-store, no-transform
843
291
  content-type:
@@ -845,13 +293,13 @@
845
293
  transfer-encoding:
846
294
  - chunked
847
295
  date:
848
- - Mon, 24 Oct 2011 17:51:58 GMT
849
- body: ! '{"expand":"user","token":"5Q4uuXK0ix464NwJOGvCbA00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/5Q4uuXK0ix464NwJOGvCbA00","rel":"self"}}'
296
+ - Mon, 24 Oct 2011 18:58:18 GMT
297
+ body: ! '{"expand":"user","token":"HRz7gjbhx0vl6QnYRHKDjQ00","user":{"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/user?username=user@example.com","rel":"self"},"name":"user@example.com"},"link":{"href":"http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00","rel":"self"}}'
850
298
  http_version: '1.1'
851
299
  - !ruby/struct:VCR::HTTPInteraction
852
300
  request: !ruby/struct:VCR::Request
853
301
  method: :delete
854
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/5Q4uuXK0ix464NwJOGvCbA00
302
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00
855
303
  body: !!null
856
304
  headers:
857
305
  accept:
@@ -870,15 +318,15 @@
870
318
  x-crowd-user-management-version:
871
319
  - '1.1'
872
320
  set-cookie:
873
- - JSESSIONID=7CDAA352345E3E0B63CC6A16541A0EA4; Path=/crowd
321
+ - JSESSIONID=4D3AE20269AFC73F3A063B8C3A47CF83; Path=/crowd
874
322
  date:
875
- - Mon, 24 Oct 2011 17:51:59 GMT
323
+ - Mon, 24 Oct 2011 18:58:18 GMT
876
324
  body: !!null
877
325
  http_version: '1.1'
878
326
  - !ruby/struct:VCR::HTTPInteraction
879
327
  request: !ruby/struct:VCR::Request
880
328
  method: :post
881
- uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/5Q4uuXK0ix464NwJOGvCbA00
329
+ uri: http://127.0.0.1:8095/crowd/rest/usermanagement/1/session/HRz7gjbhx0vl6QnYRHKDjQ00
882
330
  body: ! '{}'
883
331
  headers:
884
332
  accept:
@@ -899,12 +347,12 @@
899
347
  x-crowd-user-management-version:
900
348
  - '1.1'
901
349
  set-cookie:
902
- - JSESSIONID=5A5987F464ACACD1EAD53BA8CAC76158; Path=/crowd
350
+ - JSESSIONID=8F33832C59536DAB7933396D8D953BC5; Path=/crowd
903
351
  content-type:
904
352
  - application/json
905
353
  transfer-encoding:
906
354
  - chunked
907
355
  date:
908
- - Mon, 24 Oct 2011 17:51:59 GMT
356
+ - Mon, 24 Oct 2011 18:58:18 GMT
909
357
  body: ! '{"reason":"INVALID_SSO_TOKEN","message":"Token does not validate."}'
910
358
  http_version: '1.1'
@@ -45,6 +45,21 @@ describe Crowd::Client do
45
45
  end
46
46
  end
47
47
 
48
+ describe "#user(token)" do
49
+
50
+ it "should return the expanded user" do
51
+ token = subject.login('user@example.com', 'password')
52
+ subject.user(token)['name'].should == 'user@example.com'
53
+ end
54
+ end
55
+
56
+ describe "#user_groups(username)" do
57
+ it "should return the groups of the user" do
58
+ subject.user_groups('user@example.com').should include('MyGroup')
59
+ subject.user_groups('user@example.com').should_not include('OtherGroup')
60
+ end
61
+ end
62
+
48
63
  describe "#logout" do
49
64
 
50
65
  it "should logout the current session" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: crowd-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2011-10-24 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
16
- requirement: &70256891490720 !ruby/object:Gem::Requirement
16
+ requirement: &70149987425520 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :development
23
23
  prerelease: false
24
- version_requirements: *70256891490720
24
+ version_requirements: *70149987425520
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: vcr
27
- requirement: &70256891490160 !ruby/object:Gem::Requirement
27
+ requirement: &70149987424800 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70256891490160
35
+ version_requirements: *70149987424800
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: webmock
38
- requirement: &70256891489460 !ruby/object:Gem::Requirement
38
+ requirement: &70149987424100 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70256891489460
46
+ version_requirements: *70149987424100
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: faraday
49
- requirement: &70256891488580 !ruby/object:Gem::Requirement
49
+ requirement: &70149987423020 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: 0.7.5
55
55
  type: :runtime
56
56
  prerelease: false
57
- version_requirements: *70256891488580
57
+ version_requirements: *70149987423020
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: faraday_middleware
60
- requirement: &70256891487820 !ruby/object:Gem::Requirement
60
+ requirement: &70149987422240 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ~>
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: 0.7.0
66
66
  type: :runtime
67
67
  prerelease: false
68
- version_requirements: *70256891487820
68
+ version_requirements: *70149987422240
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: patron
71
- requirement: &70256891486680 !ruby/object:Gem::Requirement
71
+ requirement: &70149987421180 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ~>
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: 0.4.16
77
77
  type: :runtime
78
78
  prerelease: false
79
- version_requirements: *70256891486680
79
+ version_requirements: *70149987421180
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: json
82
- requirement: &70256891485380 !ruby/object:Gem::Requirement
82
+ requirement: &70149987416800 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ~>
@@ -87,7 +87,7 @@ dependencies:
87
87
  version: 1.6.1
88
88
  type: :runtime
89
89
  prerelease: false
90
- version_requirements: *70256891485380
90
+ version_requirements: *70149987416800
91
91
  description: A simple rest client for Crowd
92
92
  email:
93
93
  - paul@webpowerdesign.net
@@ -96,6 +96,7 @@ extensions: []
96
96
  extra_rdoc_files: []
97
97
  files:
98
98
  - .gitignore
99
+ - .rvmrc
99
100
  - Gemfile
100
101
  - Rakefile
101
102
  - crowd-client.gemspec