bridge_api 0.3.3 → 0.3.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 88f17e825afd96df492d4be2c073dbe10eef3f97c6c835ffdcfaeb3d6819e82f
4
- data.tar.gz: 3b79209eea1c6b981b09d7601026b1f4c68452cd14b8fe7e76cdde0cc193d706
3
+ metadata.gz: bda5c64e6db4f31db4ad058c8252fb9090fd532090e302eaf7b9e5ff6adb1bc0
4
+ data.tar.gz: c394ca46d0eed4c57683585a2bd2a8987b854e5df2155d5793db15c29e7da305
5
5
  SHA512:
6
- metadata.gz: 66eb8df82ecce9bf89f0a087b7f15eb105793137e91edce41d0c68829610a006fba0dc666fff77bf588763508ee26efabf54d2522f84181110cf0eb11eda6946
7
- data.tar.gz: a418a116fd8ec3e290116e9ee16e0f63140159a65c278394d454a944e16e6e917275f7c51797c73ebf349cceca28dc547e9f516ef922cfa41ed415fb7860534e
6
+ metadata.gz: ae9fe3742eec1ca1e1b718e815167c2dee53864f9701c34084caa04ad83fbc894da4a8c784b8aecebde5774be861bba35e429b7d965863ceebcd50e3fbac5e1d
7
+ data.tar.gz: 75a55a424047f5e65f55224944798fd93f4b66c13755ce5525aa83269950f337a307565c06e750a8c1c8d3957027bac31eb664cab4e8acf8d58d035e82274e63
@@ -13,7 +13,7 @@ jobs:
13
13
  ruby-version: 2.7.0
14
14
  - name: Install bundle and gems # Step 4
15
15
  run: |
16
- gem install bundler
16
+ gem install bundler -v '2.3.26'
17
17
  bundle install --jobs 4 --retry 3
18
18
  - name: Run tests # Step 6
19
19
  run: COVERAGE=true bundle exec rspec
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bridge_api (0.2.0)
4
+ bridge_api (0.3.5)
5
5
  faraday (~> 0.17.3)
6
6
  faraday_middleware (>= 0.12.2)
7
7
  footrest (>= 0.5.1)
@@ -10,36 +10,51 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (7.0.3)
13
+ activesupport (7.1.5.1)
14
+ base64
15
+ benchmark (>= 0.3)
16
+ bigdecimal
14
17
  concurrent-ruby (~> 1.0, >= 1.0.2)
18
+ connection_pool (>= 2.2.5)
19
+ drb
15
20
  i18n (>= 1.6, < 2)
21
+ logger (>= 1.4.2)
16
22
  minitest (>= 5.1)
23
+ mutex_m
24
+ securerandom (>= 0.3)
17
25
  tzinfo (~> 2.0)
18
26
  addressable (2.5.2)
19
27
  public_suffix (>= 2.0.2, < 4.0)
28
+ base64 (0.2.0)
29
+ benchmark (0.4.0)
30
+ bigdecimal (3.1.9)
20
31
  byebug (8.2.5)
21
32
  coderay (1.1.2)
22
- concurrent-ruby (1.1.10)
33
+ concurrent-ruby (1.3.5)
34
+ connection_pool (2.5.0)
23
35
  crack (0.4.3)
24
36
  safe_yaml (~> 1.0.0)
25
37
  diff-lcs (1.3)
26
- faraday (0.17.5)
38
+ drb (2.2.1)
39
+ faraday (0.17.6)
27
40
  multipart-post (>= 1.2, < 3)
28
41
  faraday_middleware (0.14.0)
29
42
  faraday (>= 0.7.4, < 1.0)
30
- footrest (0.5.3)
43
+ footrest (0.5.8)
31
44
  activesupport (>= 3.0.0)
32
- faraday (>= 0.9.0, < 1)
45
+ faraday (>= 0.9.0, < 2)
33
46
  link_header (>= 0.0.7)
34
47
  hashdiff (0.3.7)
35
- i18n (1.10.0)
48
+ i18n (1.14.7)
36
49
  concurrent-ruby (~> 1.0)
37
50
  link_header (0.0.8)
51
+ logger (1.6.5)
38
52
  method_source (0.9.0)
39
- minitest (5.15.0)
53
+ minitest (5.25.4)
40
54
  mock_redis (0.31.0)
41
55
  ruby2_keywords
42
- multipart-post (2.1.1)
56
+ multipart-post (2.4.1)
57
+ mutex_m (0.3.0)
43
58
  paul_walker (0.1.2)
44
59
  redis (>= 4.0)
45
60
  pry (0.11.3)
@@ -50,7 +65,10 @@ GEM
50
65
  rack-protection (1.5.5)
51
66
  rack
52
67
  rake (0.9.6)
53
- redis (4.6.0)
68
+ redis (5.3.0)
69
+ redis-client (>= 0.22.0)
70
+ redis-client (0.23.2)
71
+ connection_pool
54
72
  rspec (2.99.0)
55
73
  rspec-core (~> 2.99.0)
56
74
  rspec-expectations (~> 2.99.0)
@@ -61,12 +79,13 @@ GEM
61
79
  rspec-mocks (2.99.4)
62
80
  ruby2_keywords (0.0.5)
63
81
  safe_yaml (1.0.4)
82
+ securerandom (0.3.2)
64
83
  sinatra (1.4.8)
65
84
  rack (~> 1.5)
66
85
  rack-protection (~> 1.4)
67
86
  tilt (>= 1.3, < 3)
68
87
  tilt (1.4.1)
69
- tzinfo (2.0.4)
88
+ tzinfo (2.0.6)
70
89
  concurrent-ruby (~> 1.0)
71
90
  webmock (1.22.6)
72
91
  addressable (>= 2.3.6)
@@ -26,6 +26,11 @@ module BridgeAPI
26
26
  def reset_enrollment(enrollment_id, params = {})
27
27
  post("#{API_PATH}#{ADMIN_PATH}#{ENROLLMENT_PATH}/#{enrollment_id}#{RESET_PATH}", params)
28
28
  end
29
+
30
+ # Get all current enrollments for the learner.
31
+ def get_learner_enrollments(learner_id, params = {})
32
+ get("#{API_PATH}#{AUTHOR_PATH}#{LEARNERS_PATH}/#{learner_id}#{LEARNER_ENROLLMENTS}", params)
33
+ end
29
34
  end
30
35
  end
31
36
  end
@@ -35,6 +35,10 @@ module BridgeAPI
35
35
  put("#{API_PATH}#{AUTHOR_PATH}#{COURSE_TEMPLATE_PATH}/#{course_template_id}/#{SUB_ACCOUNT_PATH}/share", params)
36
36
  end
37
37
 
38
+ def async_share_course_with_subaccount(course_template_id, params = {})
39
+ put("#{API_PATH}#{AUTHOR_PATH}#{COURSE_TEMPLATE_PATH}/#{course_template_id}/#{SUB_ACCOUNT_PATH}/share_async", params)
40
+ end
41
+
38
42
  def revoke_course_from_subaccount(course_template_id, params = {})
39
43
  put("#{API_PATH}#{AUTHOR_PATH}#{COURSE_TEMPLATE_PATH}/#{course_template_id}/#{SUB_ACCOUNT_PATH}/revoke", params)
40
44
  end
@@ -47,6 +47,7 @@ module BridgeAPI
47
47
  DUE_DATE_PATH = '/due_date'
48
48
  RESET_PATH = '/reset'
49
49
  NEW_TEMPORARY_USERS = '/new_temporary_users'
50
+ LEARNER_ENROLLMENTS = '/learner_enrollments'
50
51
  RESULT_MAPPING = {}
51
52
 
52
53
  Dir[File.dirname(__FILE__) + '/client/*.rb'].each do |file|
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module BridgeAPI
4
- VERSION = '0.3.3' unless defined?(BridgeAPI::VERSION)
4
+ VERSION = '0.3.5' unless defined?(BridgeAPI::VERSION)
5
5
  end
@@ -31,4 +31,9 @@ describe BridgeAPI::Client::Enrollment do
31
31
  response = @client.reset_enrollment(1)
32
32
  expect(response.status).to(eq(204))
33
33
  end
34
+
35
+ it 'should get all current learner enrollments' do
36
+ learner_enrollments = @client.get_learner_enrollments(1)
37
+ expect(learner_enrollments.length).to(eq(2))
38
+ end
34
39
  end
@@ -0,0 +1,18 @@
1
+ {
2
+ "learner_enrollments": [
3
+ {
4
+ "id": "1",
5
+ "learnable_id": 1,
6
+ "learnable_type": "CourseTemplate",
7
+ "state": "created",
8
+ "inactive": null
9
+ },
10
+ {
11
+ "id": "2",
12
+ "learnable_id": 2,
13
+ "learnable_type": "CourseTemplate",
14
+ "state": "created",
15
+ "inactive": null
16
+ }
17
+ ]
18
+ }
@@ -130,6 +130,10 @@ class FakeBridge < Sinatra::Base
130
130
  get_json_data 204, 'enrollment.json'
131
131
  end
132
132
 
133
+ get %r{/api/author/learners/\d+/learner_enrollments$} do
134
+ get_json_data 200, 'learner_enrollments.json'
135
+ end
136
+
133
137
  # Custom Fields
134
138
 
135
139
  get %r{/api/author/custom_fields} do
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.3.3
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jay Shaffer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-11 00:00:00.000000000 Z
11
+ date: 2025-01-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -279,6 +279,7 @@ files:
279
279
  - spec/fixtures/enrollment.json
280
280
  - spec/fixtures/enrollments.json
281
281
  - spec/fixtures/group.json
282
+ - spec/fixtures/learner_enrollments.json
282
283
  - spec/fixtures/learner_items.json
283
284
  - spec/fixtures/live_course.json
284
285
  - spec/fixtures/live_course_enrollments.json
@@ -354,6 +355,7 @@ test_files:
354
355
  - spec/fixtures/enrollment.json
355
356
  - spec/fixtures/enrollments.json
356
357
  - spec/fixtures/group.json
358
+ - spec/fixtures/learner_enrollments.json
357
359
  - spec/fixtures/learner_items.json
358
360
  - spec/fixtures/live_course.json
359
361
  - spec/fixtures/live_course_enrollments.json