psu_identity 0.2.0 → 0.3.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
  SHA256:
3
- metadata.gz: 966588c90dc49ec36a80dbe6a87be12ec1e0e1704bcb0003a589df8ca611d163
4
- data.tar.gz: b4acb81f410cdd7e7d447e25445cfcfcf723d7869699fe1dcc749fda941ee5ac
3
+ metadata.gz: 7996e867a943731e649e3cf0c2981fd08dd938e24f914bb8a12f1745bf7d605f
4
+ data.tar.gz: f771b556fb55e71d9ae6d0673e863dbf88fb7a1a173c224640111fa140488c92
5
5
  SHA512:
6
- metadata.gz: 2baa7fd39e55976737bd94f6f4bfc17b23667dfa80defe36e1bd2d071b2a10c672d46ef14d1756adce98c9e145bfebe79c2670bcb38e8e1d3275943d6d07836f
7
- data.tar.gz: 51e7b779c3cfb6d1d5466090f0eb9c312f890e1a15474a94d539e8211439d6189528b4a27a8da6a694e289370d2117d711ce85ff7764f6915edf74f8eb84f893
6
+ metadata.gz: 362b2abff2b599aaae062a0b367c8afbd038e6cc7536476ed7ac1a710ae534f90fa25274ff9ebae21ded7c404de669766db274806ae0c7ae31cf3b8d4249adef
7
+ data.tar.gz: 6105dfa4398b1653a1621a84548f7ed3dee1caad9f05a746364eca6f527616d1beea6fbd9c27d277d38be8fc0e5c4fedf5403cbe0a739e1f9f74e3acd0a43773
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- psu_identity (0.2.0)
4
+ psu_identity (0.3.0)
5
5
  faraday (~> 1.0)
6
6
  json
7
7
  rake (>= 12.0)
@@ -18,25 +18,29 @@ GEM
18
18
  rexml
19
19
  diff-lcs (1.4.4)
20
20
  docile (1.4.0)
21
- faraday (1.8.0)
21
+ faraday (1.9.3)
22
22
  faraday-em_http (~> 1.0)
23
23
  faraday-em_synchrony (~> 1.0)
24
24
  faraday-excon (~> 1.1)
25
- faraday-httpclient (~> 1.0.1)
25
+ faraday-httpclient (~> 1.0)
26
+ faraday-multipart (~> 1.0)
26
27
  faraday-net_http (~> 1.0)
27
- faraday-net_http_persistent (~> 1.1)
28
+ faraday-net_http_persistent (~> 1.0)
28
29
  faraday-patron (~> 1.0)
29
30
  faraday-rack (~> 1.0)
30
- multipart-post (>= 1.2, < 3)
31
+ faraday-retry (~> 1.0)
31
32
  ruby2_keywords (>= 0.0.4)
32
33
  faraday-em_http (1.0.0)
33
34
  faraday-em_synchrony (1.0.0)
34
35
  faraday-excon (1.1.0)
35
36
  faraday-httpclient (1.0.1)
37
+ faraday-multipart (1.0.3)
38
+ multipart-post (>= 1.2, < 3)
36
39
  faraday-net_http (1.0.1)
37
40
  faraday-net_http_persistent (1.2.0)
38
41
  faraday-patron (1.0.0)
39
42
  faraday-rack (1.0.0)
43
+ faraday-retry (1.0.3)
40
44
  hashdiff (1.0.1)
41
45
  json (2.5.1)
42
46
  method_source (1.0.0)
@@ -117,4 +121,4 @@ DEPENDENCIES
117
121
  webmock
118
122
 
119
123
  BUNDLED WITH
120
- 2.2.28
124
+ 2.2.29
@@ -2,9 +2,11 @@
2
2
 
3
3
  # @abstract Client for querying Penn State's identity API: https://identity.apps.psu.edu/search-service/resources
4
4
  module PsuIdentity::SearchService
5
- class Client
6
- class Error < StandardError; end
5
+ class Error < StandardError; end
6
+
7
+ class NotFound < StandardError; end
7
8
 
9
+ class Client
8
10
  attr_reader :base_url
9
11
 
10
12
  # @param [String] base_url
@@ -37,7 +39,7 @@ module PsuIdentity::SearchService
37
39
 
38
40
  # @return [PsuIdentity::SearchService::Person, nil]
39
41
  def process_userid_response(response)
40
- return if response.status == 404
42
+ raise NotFound if response.status == 404
41
43
 
42
44
  raise Error.new(response.body) unless response.success?
43
45
 
@@ -39,19 +39,19 @@ module PsuIdentity::SearchService
39
39
  end
40
40
 
41
41
  def preferred_given_name
42
- data['preferredGivenName']
42
+ data.fetch('preferredGivenName', given_name)
43
43
  end
44
44
 
45
45
  def preferred_middle_name
46
- data['preferredMiddleName']
46
+ data.fetch('preferredMiddleName', middle_name)
47
47
  end
48
48
 
49
49
  def preferred_family_name
50
- data['preferredFamilyName']
50
+ data.fetch('preferredFamilyName', family_name)
51
51
  end
52
52
 
53
53
  def preferred_honorific_suffix
54
- data['preferredHonorificSuffix']
54
+ data.fetch('preferredHonorificSuffix', honorific_suffix)
55
55
  end
56
56
 
57
57
  def active?
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module PsuIdentity
4
- VERSION = '0.2.0'
4
+ VERSION = '0.3.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: psu_identity
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Kiessling
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-10-21 00:00:00.000000000 Z
11
+ date: 2022-01-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -216,7 +216,7 @@ homepage: https://github.com/psu-libraries/psu_identity
216
216
  licenses:
217
217
  - MIT
218
218
  metadata: {}
219
- post_install_message:
219
+ post_install_message:
220
220
  rdoc_options: []
221
221
  require_paths:
222
222
  - lib
@@ -231,8 +231,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
231
231
  - !ruby/object:Gem::Version
232
232
  version: '0'
233
233
  requirements: []
234
- rubygems_version: 3.2.28
235
- signing_key:
234
+ rubygems_version: 3.0.3
235
+ signing_key:
236
236
  specification_version: 4
237
237
  summary: Gem for interfacing with psu's search-service
238
238
  test_files: []