oneroster 2.0.1 → 2.1.0

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
  SHA1:
3
- metadata.gz: 56b1e4481ec56f6041edd31f16457ace9bd84d88
4
- data.tar.gz: 364a22aeaa63d58c65997563a239e549e1fbd70a
3
+ metadata.gz: d7c96ffdc7402eec2d58ec75149901ed79f346e3
4
+ data.tar.gz: 36d976b05175c8e05824cf9d0d0941cff5ad6d29
5
5
  SHA512:
6
- metadata.gz: f0a4b44c8e3e518fc65bb7ca287b7ace69f5a036b82def7c33f2fbccc5aae60188efe7152e012a4bd4878dbd58512f28d15f1b4557ba95d59432d1226ec3e260
7
- data.tar.gz: 7940dcec5c164d80229032579927374c9b2c9d539d15a30ed8423002ad35795de980152252a58b04b04371762a4c9c76a47e675fd22fabafdc91f0efafecb383
6
+ metadata.gz: 46ecf8a50d1dd33f7dc41885d4aa0e72a5fea18ef5832ab7102901700611fff887669f653d07369f4f49a0a54dd22894823a17fd654d3aea6c489c29463bdb9e
7
+ data.tar.gz: c967a57bd3f44e997ad024014d9ba12282edf44c5bc6c5194e5a41662ce98a60fd83dfb408dcb64e0bb3b9c1f3d746dfdc151f32e1c8731b7d55dec63ebd7a63
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- oneroster (2.0.1)
4
+ oneroster (2.1.0)
5
5
  dry-inflector
6
6
  faraday
7
7
  faraday_middleware
@@ -56,6 +56,7 @@ module OneRoster
56
56
  'course_number' => course.course_code,
57
57
  'period' => oneroster_class.period,
58
58
  'grades' => oneroster_class.grades,
59
+ 'subjects' => oneroster_class.subjects,
59
60
  'term_name' => term&.name,
60
61
  'term_start_date' => term&.start_date,
61
62
  'term_end_date' => term&.end_date
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module OneRoster
2
4
  class Response
3
5
  attr_reader :status, :raw_body, :headers
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module OneRoster
4
- VERSION = '2.0.1'
4
+ VERSION = '2.1.0'
5
5
  end
@@ -9,6 +9,7 @@ module OneRoster
9
9
  :provider,
10
10
  :period,
11
11
  :grades,
12
+ :subjects,
12
13
  :term_id
13
14
 
14
15
  def initialize(attributes = {}, *)
@@ -18,6 +19,7 @@ module OneRoster
18
19
  @status = attributes['status']
19
20
  @period = first_period(attributes) || period_from_code(attributes)
20
21
  @grades = attributes['grades']
22
+ @subjects = presence(attributes['subjects']) || []
21
23
  @term_id = attributes['terms'][0]['sourcedId']
22
24
  @provider = 'oneroster'
23
25
  end
@@ -35,6 +37,14 @@ module OneRoster
35
37
  def period_from_code(attributes)
36
38
  attributes['classCode']&.match(/- Period (\d+) -/) { |m| m[1] }
37
39
  end
40
+
41
+ def presence(field)
42
+ field unless blank?(field)
43
+ end
44
+
45
+ def blank?(field)
46
+ field.nil? || field == ''
47
+ end
38
48
  end
39
49
  end
40
50
  end
@@ -8,6 +8,7 @@ module OneRoster
8
8
  :course_number,
9
9
  :period,
10
10
  :grades,
11
+ :subjects,
11
12
  :provider,
12
13
  :term_name,
13
14
  :term_start_date,
@@ -19,6 +20,7 @@ module OneRoster
19
20
  @course_number = attributes['course_number']
20
21
  @period = attributes['period']
21
22
  @grades = attributes['grades']
23
+ @subjects = attributes['subjects']
22
24
  @term_name = attributes['term_name']
23
25
  @term_start_date = attributes['term_start_date']
24
26
  @term_end_date = attributes['term_end_date']
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: oneroster
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Julius
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-24 00:00:00.000000000 Z
11
+ date: 2020-07-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday