bridge_api 0.1.26 → 0.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/bridge_api/client/role.rb +8 -0
- data/lib/bridge_api/client/user.rb +4 -0
- data/lib/bridge_api/version.rb +1 -1
- data/spec/bridge_api/client/role_spec.rb +27 -0
- data/spec/bridge_api/client/user_spec.rb +6 -0
- data/spec/fixtures/roles.json +27 -0
- data/spec/fixtures/user_roles_add.json +68 -0
- data/spec/support/fake_bridge.rb +17 -0
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6fe6414fe4379427b35d713bcb22215bcaaac955
|
4
|
+
data.tar.gz: ef6af928d02d5e9d3c55da7a89f82cbfc862a066
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c99339c9dcb18858fbdb2ac8163ffd0aaebd62c70624c59d503475bb4ad895bca604a378a0c6a826fbde3af1a1a184f0a42889e2e25def866b9abbc4da738121
|
7
|
+
data.tar.gz: 6c36f3dbf2f26e641172f301c04210f8c8eef5e625aeaa66e635967c0d2e9f0d09f5e1be81b2dea69d73d1328cf701ccb9ef0ffe248c2e41de37f75eaa854454
|
data/Gemfile.lock
CHANGED
@@ -8,6 +8,14 @@ module BridgeAPI
|
|
8
8
|
def get_role(role_id, params = {})
|
9
9
|
get("#{API_PATH}#{AUTHOR_PATH}#{ROLE_PATH}/#{role_id}", params)
|
10
10
|
end
|
11
|
+
|
12
|
+
def create_role(params = {})
|
13
|
+
post("#{API_PATH}#{AUTHOR_PATH}#{ROLE_PATH}", params)
|
14
|
+
end
|
15
|
+
|
16
|
+
def delete_role(role_id, params = {})
|
17
|
+
delete("#{API_PATH}#{AUTHOR_PATH}#{ROLE_PATH}/#{role_id}", params)
|
18
|
+
end
|
11
19
|
end
|
12
20
|
end
|
13
21
|
end
|
@@ -33,6 +33,10 @@ module BridgeAPI
|
|
33
33
|
get("#{API_PATH}#{AUTHOR_PATH}#{USER_PATH}", params)
|
34
34
|
end
|
35
35
|
|
36
|
+
def add_user_to_role_batch(user_id, params = {})
|
37
|
+
put("#{API_PATH}#{ADMIN_PATH}#{USER_PATH}/#{user_id}#{ROLE_PATH}", params)
|
38
|
+
end
|
39
|
+
|
36
40
|
private
|
37
41
|
|
38
42
|
#++user_id++ Bridge user ID
|
data/lib/bridge_api/version.rb
CHANGED
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
describe BridgeAPI::Client::Role do
|
4
|
+
before do
|
5
|
+
@client = BridgeAPI::Client.new(prefix: 'http://test.bridge.com', token: 'test_token')
|
6
|
+
end
|
7
|
+
|
8
|
+
it 'should get all roles' do
|
9
|
+
response = @client.get_all_roles
|
10
|
+
expect(response.members.size).to eq(1)
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'should get a role' do
|
14
|
+
response = @client.get_role(1)
|
15
|
+
expect(response.members.size).to eq(1)
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should create a role' do
|
19
|
+
response = @client.create_role({})
|
20
|
+
expect(response.members.size).to eq(1)
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'should delete a role' do
|
24
|
+
response = @client.delete_role(1, {})
|
25
|
+
expect(response.status).to eq(204)
|
26
|
+
end
|
27
|
+
end
|
@@ -32,4 +32,10 @@ describe BridgeAPI::Client::User do
|
|
32
32
|
response = @client.get_all_users
|
33
33
|
expect(response.length).to(eq(2))
|
34
34
|
end
|
35
|
+
|
36
|
+
it 'should add roles by batch for a user' do
|
37
|
+
response = @client.add_user_to_role_batch(1)
|
38
|
+
expect(response.length).to eq(7)
|
39
|
+
end
|
40
|
+
|
35
41
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
{
|
2
|
+
"roles": [
|
3
|
+
{
|
4
|
+
"id": "72c2c9d5-11a4-4093-857f-7c5dc3b0d8cb",
|
5
|
+
"name": "tester",
|
6
|
+
"permissions": [
|
7
|
+
"role_view",
|
8
|
+
"user_view",
|
9
|
+
"user_create",
|
10
|
+
"user_update",
|
11
|
+
"user_destroy",
|
12
|
+
"user_self_update",
|
13
|
+
"user_uid_update",
|
14
|
+
"group_create",
|
15
|
+
"group_update",
|
16
|
+
"group_view",
|
17
|
+
"group_destroy",
|
18
|
+
"membership_create",
|
19
|
+
"membership_destroy",
|
20
|
+
"group_enrollment_create",
|
21
|
+
"live_course_group_enrollment_create",
|
22
|
+
"program_group_enrollment_create"
|
23
|
+
],
|
24
|
+
"is_computed": false
|
25
|
+
}
|
26
|
+
]
|
27
|
+
}
|
@@ -0,0 +1,68 @@
|
|
1
|
+
{
|
2
|
+
"meta": {},
|
3
|
+
"roles": [
|
4
|
+
{
|
5
|
+
"id": 169,
|
6
|
+
"user_id": 305,
|
7
|
+
"domain_id": 1,
|
8
|
+
"created_at": "2018-06-21T14:42:29.267-06:00",
|
9
|
+
"updated_at": "2018-06-21T14:42:29.267-06:00",
|
10
|
+
"deleted_at": null,
|
11
|
+
"role_id": "803561cd-77a6-49a3-9438-35498a8b593a"
|
12
|
+
},
|
13
|
+
{
|
14
|
+
"id": 162,
|
15
|
+
"user_id": 305,
|
16
|
+
"domain_id": 1,
|
17
|
+
"created_at": "2018-06-12T12:33:37.470-06:00",
|
18
|
+
"updated_at": "2018-06-12T12:33:37.470-06:00",
|
19
|
+
"deleted_at": null,
|
20
|
+
"role_id": "it_admin"
|
21
|
+
},
|
22
|
+
{
|
23
|
+
"id": 161,
|
24
|
+
"user_id": 305,
|
25
|
+
"domain_id": 1,
|
26
|
+
"created_at": "2018-06-12T12:33:37.437-06:00",
|
27
|
+
"updated_at": "2018-06-12T12:33:37.437-06:00",
|
28
|
+
"deleted_at": null,
|
29
|
+
"role_id": "admin"
|
30
|
+
},
|
31
|
+
{
|
32
|
+
"id": 160,
|
33
|
+
"user_id": 305,
|
34
|
+
"domain_id": 1,
|
35
|
+
"created_at": "2018-06-12T12:33:37.403-06:00",
|
36
|
+
"updated_at": "2018-06-12T12:33:37.403-06:00",
|
37
|
+
"deleted_at": null,
|
38
|
+
"role_id": "account_admin"
|
39
|
+
},
|
40
|
+
{
|
41
|
+
"id": 159,
|
42
|
+
"user_id": 305,
|
43
|
+
"domain_id": 1,
|
44
|
+
"created_at": "2018-06-12T12:33:37.370-06:00",
|
45
|
+
"updated_at": "2018-06-12T12:33:37.370-06:00",
|
46
|
+
"deleted_at": null,
|
47
|
+
"role_id": "99af7f72-f4fc-4d59-b667-d5f7388b8f7e"
|
48
|
+
},
|
49
|
+
{
|
50
|
+
"id": 158,
|
51
|
+
"user_id": 305,
|
52
|
+
"domain_id": 1,
|
53
|
+
"created_at": "2018-06-12T12:33:37.331-06:00",
|
54
|
+
"updated_at": "2018-06-12T12:33:37.331-06:00",
|
55
|
+
"deleted_at": null,
|
56
|
+
"role_id": "3ad463df-fc30-4130-8fcd-195006f00f86"
|
57
|
+
},
|
58
|
+
{
|
59
|
+
"id": 32,
|
60
|
+
"user_id": 305,
|
61
|
+
"domain_id": 1,
|
62
|
+
"created_at": "2017-11-16T14:38:21.280-07:00",
|
63
|
+
"updated_at": "2017-11-16T14:38:21.280-07:00",
|
64
|
+
"deleted_at": null,
|
65
|
+
"role_id": "author"
|
66
|
+
}
|
67
|
+
]
|
68
|
+
}
|
data/spec/support/fake_bridge.rb
CHANGED
@@ -197,6 +197,23 @@ class FakeBridge < Sinatra::Base
|
|
197
197
|
get_json_data 200, 'accounts.json'
|
198
198
|
end
|
199
199
|
|
200
|
+
#Roles
|
201
|
+
get %r{/api/author/roles} do
|
202
|
+
get_json_data 200, 'roles.json'
|
203
|
+
end
|
204
|
+
|
205
|
+
post %r{/api/author/roles} do
|
206
|
+
get_json_data 200, 'roles.json'
|
207
|
+
end
|
208
|
+
|
209
|
+
put %r{/api/admin/users/\d+/roles} do
|
210
|
+
get_json_data 200, 'user_roles_add.json'
|
211
|
+
end
|
212
|
+
|
213
|
+
delete %r{/api/author/roles} do
|
214
|
+
get_json_data 204, 'roles.json'
|
215
|
+
end
|
216
|
+
|
200
217
|
private
|
201
218
|
|
202
219
|
def get_json_data(response_code, file_name)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bridge_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.27
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jay Shaffer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-06-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -220,6 +220,7 @@ files:
|
|
220
220
|
- spec/bridge_api/client/live_course_spec.rb
|
221
221
|
- spec/bridge_api/client/manager_spec.rb
|
222
222
|
- spec/bridge_api/client/program_enrollment_spec.rb
|
223
|
+
- spec/bridge_api/client/role_spec.rb
|
223
224
|
- spec/bridge_api/client/sub_account_spec.rb
|
224
225
|
- spec/bridge_api/client/user_spec.rb
|
225
226
|
- spec/bridge_api/client_spec.rb
|
@@ -239,10 +240,12 @@ files:
|
|
239
240
|
- spec/fixtures/managers.json
|
240
241
|
- spec/fixtures/program_enrollments.json
|
241
242
|
- spec/fixtures/programs.json
|
243
|
+
- spec/fixtures/roles.json
|
242
244
|
- spec/fixtures/sub_account_lti_config.json
|
243
245
|
- spec/fixtures/sub_account_lti_config_update.json
|
244
246
|
- spec/fixtures/sub_accounts.json
|
245
247
|
- spec/fixtures/user.json
|
248
|
+
- spec/fixtures/user_roles_add.json
|
246
249
|
- spec/fixtures/users.json
|
247
250
|
- spec/support/fake_bridge.rb
|
248
251
|
- spec/test_helper.rb
|
@@ -282,6 +285,7 @@ test_files:
|
|
282
285
|
- spec/bridge_api/client/live_course_spec.rb
|
283
286
|
- spec/bridge_api/client/manager_spec.rb
|
284
287
|
- spec/bridge_api/client/program_enrollment_spec.rb
|
288
|
+
- spec/bridge_api/client/role_spec.rb
|
285
289
|
- spec/bridge_api/client/sub_account_spec.rb
|
286
290
|
- spec/bridge_api/client/user_spec.rb
|
287
291
|
- spec/bridge_api/client_spec.rb
|
@@ -301,10 +305,12 @@ test_files:
|
|
301
305
|
- spec/fixtures/managers.json
|
302
306
|
- spec/fixtures/program_enrollments.json
|
303
307
|
- spec/fixtures/programs.json
|
308
|
+
- spec/fixtures/roles.json
|
304
309
|
- spec/fixtures/sub_account_lti_config.json
|
305
310
|
- spec/fixtures/sub_account_lti_config_update.json
|
306
311
|
- spec/fixtures/sub_accounts.json
|
307
312
|
- spec/fixtures/user.json
|
313
|
+
- spec/fixtures/user_roles_add.json
|
308
314
|
- spec/fixtures/users.json
|
309
315
|
- spec/support/fake_bridge.rb
|
310
316
|
- spec/test_helper.rb
|