carin_for_blue_button_test_kit 0.14.0 → 0.15.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ea990f355ce17cde4cd012adc06141cb44bf6c3c70a8bc73de0faa9d3f3c2102
4
- data.tar.gz: 58e4f6efca2020589024a8cbb11959ed159f58ff00690a3d85f57fd9fea6f7c3
3
+ metadata.gz: 568b18da312669c0f601dd37cce2cecd00de51998b9c558b37a56c19a4bcf13d
4
+ data.tar.gz: c57425f4370e1c833c2f35dba75504631c0eadce4dae46d59baa1373caf635e5
5
5
  SHA512:
6
- metadata.gz: 22e6ea91cf9494db944a339344b23c80386bbe6ccfb2ef085264467a334c98eca1905acf8ab9d9b5c604b89379816ef8f867bfaf65b62f7ba5ffd838eada51f1
7
- data.tar.gz: 23fd00d94577114d623bbeef68b15ff2e121de486b24082a66eace0cb915eee51b1d34215582cfa1aad39236aff17fab4af21959532199b266ff7d65351415fb
6
+ metadata.gz: db660ea998fc0650c7511a6812fa4841fdb6981a2061374abdc449890961bf7d18b8818d94965efc56a9fcf8184f480977da0a787471a8c9950b88b02db0f0fa
7
+ data.tar.gz: fae6cacd48c15c8134de7b5b7f3c6c67b3406ac84fd8bba258ae49b4bccfc2d5ae18c4a6198488bf3a7b78694b346cc8511ce4dde9867a2c845804e24b8e4270
@@ -1,4 +1,3 @@
1
- require 'inferno/dsl/oauth_credentials'
2
1
  require_relative 'endpoints/resource_api_endpoint'
3
2
  require_relative 'endpoints/token_endpoint'
4
3
  require_relative 'endpoints/authorize_endpoint'
@@ -22,7 +22,8 @@ module CarinForBlueButtonTestKit
22
22
  * `user/Organization.read`
23
23
  * `user/Practitioner.read`
24
24
  )
25
- input :requested_scopes, :received_scopes
25
+ input :received_scopes
26
+ input :smart_auth_info, type: :auth_info
26
27
  uses_request :token
27
28
 
28
29
  PATIENT_COMPARTMENT_RESOURCE_TYPES = %w[
@@ -41,6 +42,10 @@ module CarinForBlueButtonTestKit
41
42
  config.options[:required_scopes]
42
43
  end
43
44
 
45
+ def requested_scopes
46
+ smart_auth_info.requested_scopes
47
+ end
48
+
44
49
  def access_level_regex
45
50
  /\A(\*|\b(read|c?ru?d?s?)\b)/
46
51
  end
@@ -22,12 +22,32 @@ module CarinForBlueButtonTestKit
22
22
  They then perform a standalone launch to obtain an access token which
23
23
  can be used by the remaining tests to access patient data.
24
24
  )
25
- input_order :url,
26
- :standalone_client_id,
27
- :standalone_client_secret,
28
- :standalone_requested_scopes,
29
- :use_pkce,
30
- :pkce_code_challenge_method
25
+
26
+ config(
27
+ inputs: {
28
+ received_scopes: { name: :standalone_received_scopes },
29
+ smart_auth_info: {
30
+ options: {
31
+ components: [
32
+ {
33
+ name: :requested_scopes,
34
+ default: %(
35
+ launch/patient openid fhirUser
36
+ patient/ExplanationOfBenefit.read patient/Coverage.read
37
+ patient/Patient.read patient/Organization.read
38
+ patient/Practitioner.read user/ExplanationOfBenefit.read
39
+ user/Coverage.read user/Patient.read
40
+ user/Organization.read user/Practitioner.read
41
+ ).gsub(/\s{2,}/, ' ').strip
42
+ }
43
+ ]
44
+ }
45
+ }
46
+ },
47
+ outputs: {
48
+ patient_id: { name: :patient_ids }
49
+ }
50
+ )
31
51
 
32
52
  group from: :smart_discovery do
33
53
  run_as_group
@@ -76,31 +96,8 @@ module CarinForBlueButtonTestKit
76
96
  * [Standalone Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
77
97
  )
78
98
 
79
- config(
80
- inputs: {
81
- requested_scopes: {
82
- default: %(
83
- launch/patient openid fhirUser
84
- patient/ExplanationOfBenefit.read patient/Coverage.read
85
- patient/Patient.read patient/Organization.read
86
- patient/Practitioner.read user/ExplanationOfBenefit.read
87
- user/Coverage.read user/Patient.read
88
- user/Organization.read user/Practitioner.read
89
- ).gsub(/\s{2,}/, ' ').strip
90
- }
91
- },
92
- outputs: {
93
- patient_id: { name: :patient_ids },
94
- smart_credentials: { name: :smart_credentials }
95
- }
96
- )
97
-
98
99
  test from: :c4bb_v200_smart_scopes do
99
100
  config(
100
- inputs: {
101
- requested_scopes: { name: :standalone_requested_scopes },
102
- received_scopes: { name: :standalone_received_scopes }
103
- },
104
101
  options: {
105
102
  required_scopes: %w[
106
103
  openid
@@ -22,7 +22,8 @@ module CarinForBlueButtonTestKit
22
22
  * `user/Organization.read`
23
23
  * `user/Practitioner.read`
24
24
  )
25
- input :requested_scopes, :received_scopes
25
+ input :received_scopes
26
+ input :smart_auth_info, type: :auth_info
26
27
  uses_request :token
27
28
 
28
29
  PATIENT_COMPARTMENT_RESOURCE_TYPES = %w[
@@ -41,6 +42,10 @@ module CarinForBlueButtonTestKit
41
42
  config.options[:required_scopes]
42
43
  end
43
44
 
45
+ def requested_scopes
46
+ smart_auth_info.requested_scopes
47
+ end
48
+
44
49
  def access_level_regex
45
50
  /\A(\*|\b(read|c?ru?d?s?)\b)/
46
51
  end
@@ -22,15 +22,32 @@ module CarinForBlueButtonTestKit
22
22
  They then perform a standalone launch to obtain an access token which
23
23
  can be used by the remaining tests to access patient data.
24
24
  )
25
- input_order :url,
26
- :standalone_client_id,
27
- :standalone_client_secret,
28
- :standalone_requested_scopes,
29
- :use_pkce,
30
- :pkce_code_challenge_method,
31
- :standalone_authorization_method,
32
- :client_auth_type,
33
- :client_auth_encryption_method
25
+
26
+ config(
27
+ inputs: {
28
+ received_scopes: { name: :standalone_received_scopes },
29
+ smart_auth_info: {
30
+ options: {
31
+ components: [
32
+ {
33
+ name: :requested_scopes,
34
+ default: %(
35
+ launch/patient openid fhirUser
36
+ patient/ExplanationOfBenefit.read patient/Coverage.read
37
+ patient/Patient.read patient/Organization.read
38
+ patient/Practitioner.read user/ExplanationOfBenefit.read
39
+ user/Coverage.read user/Patient.read
40
+ user/Organization.read user/Practitioner.read
41
+ ).gsub(/\s{2,}/, ' ').strip
42
+ }
43
+ ]
44
+ }
45
+ }
46
+ },
47
+ outputs: {
48
+ patient_id: { name: :patient_ids }
49
+ }
50
+ )
34
51
 
35
52
  group from: :smart_discovery do
36
53
  run_as_group
@@ -79,31 +96,8 @@ module CarinForBlueButtonTestKit
79
96
  * [Standalone Launch Sequence](https://www.hl7.org/fhir/smart-app-launch/1.0.0/index.html#standalone-launch-sequence)
80
97
  )
81
98
 
82
- config(
83
- inputs: {
84
- requested_scopes: {
85
- default: %(
86
- launch/patient openid fhirUser
87
- patient/ExplanationOfBenefit.read patient/Coverage.read
88
- patient/Patient.read patient/Organization.read
89
- patient/Practitioner.read user/ExplanationOfBenefit.read
90
- user/Coverage.read user/Patient.read
91
- user/Organization.read user/Practitioner.read
92
- ).gsub(/\s{2,}/, ' ').strip
93
- }
94
- },
95
- outputs: {
96
- patient_id: { name: :patient_ids },
97
- smart_credentials: { name: :smart_credentials }
98
- }
99
- )
100
-
101
99
  test from: :c4bb_v200devnonfinancial_smart_scopes do
102
100
  config(
103
- inputs: {
104
- requested_scopes: { name: :standalone_requested_scopes },
105
- received_scopes: { name: :standalone_received_scopes }
106
- },
107
101
  options: {
108
102
  required_scopes: %w[
109
103
  openid
@@ -1,4 +1,3 @@
1
- require 'inferno/dsl/oauth_credentials'
2
1
  require 'smart_app_launch_test_kit'
3
2
  require_relative '../../version'
4
3
 
@@ -60,13 +59,22 @@ module CarinForBlueButtonTestKit
60
59
  end
61
60
  end
62
61
 
62
+ config(
63
+ inputs: {
64
+ smart_auth_info: { name: :smart_auth_info }
65
+ },
66
+ outputs: {
67
+ smart_auth_info: { name: :smart_auth_info }
68
+ }
69
+ )
70
+
63
71
  input :url,
64
72
  title: 'FHIR Endpoint',
65
73
  description: 'URL of the FHIR endpoint'
66
74
 
67
75
  fhir_client do
68
76
  url :url
69
- oauth_credentials :smart_credentials
77
+ auth_info :smart_auth_info
70
78
  end
71
79
 
72
80
  group from: :c4bb_v110_smart_launch
@@ -79,11 +87,10 @@ module CarinForBlueButtonTestKit
79
87
  conformant C4BB resources.
80
88
  )
81
89
 
82
- input :smart_credentials,
90
+ input :smart_auth_info,
83
91
  title: 'OAuth Credentials',
84
- type: :oauth_credentials,
92
+ type: :auth_info,
85
93
  optional: true
86
- input_order :url, :smart_credentials
87
94
 
88
95
  group from: :capability_statement_group
89
96
 
@@ -1,4 +1,3 @@
1
- require 'inferno/dsl/oauth_credentials'
2
1
  require 'smart_app_launch_test_kit'
3
2
  require_relative '../../version'
4
3
 
@@ -61,13 +60,22 @@ module CarinForBlueButtonTestKit
61
60
  end
62
61
  end
63
62
 
63
+ config(
64
+ inputs: {
65
+ smart_auth_info: { name: :smart_auth_info }
66
+ },
67
+ outputs: {
68
+ smart_auth_info: { name: :smart_auth_info }
69
+ }
70
+ )
71
+
64
72
  input :url,
65
73
  title: 'FHIR Endpoint',
66
74
  description: 'URL of the FHIR endpoint'
67
75
 
68
76
  fhir_client do
69
77
  url :url
70
- oauth_credentials :smart_credentials
78
+ auth_info :smart_auth_info
71
79
  end
72
80
 
73
81
  group from: :c4bb_v200_smart_launch
@@ -80,11 +88,10 @@ module CarinForBlueButtonTestKit
80
88
  conformant C4BB resources.
81
89
  )
82
90
 
83
- input :smart_credentials,
91
+ input :smart_auth_info,
84
92
  title: 'OAuth Credentials',
85
- type: :oauth_credentials,
93
+ type: :auth_info,
86
94
  optional: true
87
- input_order :url, :smart_credentials
88
95
 
89
96
  group from: :capability_statement_group
90
97
 
@@ -1,4 +1,3 @@
1
- require 'inferno/dsl/oauth_credentials'
2
1
  require 'smart_app_launch_test_kit'
3
2
  require_relative '../../version'
4
3
 
@@ -63,13 +62,22 @@ module CarinForBlueButtonTestKit
63
62
  end
64
63
  end
65
64
 
65
+ config(
66
+ inputs: {
67
+ smart_auth_info: { name: :smart_auth_info }
68
+ },
69
+ outputs: {
70
+ smart_auth_info: { name: :smart_auth_info }
71
+ }
72
+ )
73
+
66
74
  input :url,
67
75
  title: 'FHIR Endpoint',
68
76
  description: 'URL of the FHIR endpoint'
69
77
 
70
78
  fhir_client do
71
79
  url :url
72
- oauth_credentials :smart_credentials
80
+ auth_info :smart_auth_info
73
81
  end
74
82
 
75
83
  group from: :c4bb_v200devnonfinancial_smart_launch
@@ -82,11 +90,10 @@ module CarinForBlueButtonTestKit
82
90
  conformant C4BB resources.
83
91
  )
84
92
 
85
- input :smart_credentials,
93
+ input :smart_auth_info,
86
94
  title: 'OAuth Credentials',
87
- type: :oauth_credentials,
95
+ type: :auth_info,
88
96
  optional: true
89
- input_order :url, :smart_credentials
90
97
 
91
98
  group from: :capability_statement_group
92
99
 
@@ -1,4 +1,3 @@
1
- require 'inferno/dsl/oauth_credentials'
2
1
  require 'smart_app_launch_test_kit'
3
2
  require_relative '../../version'
4
3
 
@@ -58,13 +57,22 @@ module CarinForBlueButtonTestKit
58
57
  end
59
58
  end
60
59
 
60
+ config(
61
+ inputs: {
62
+ smart_auth_info: { name: :smart_auth_info }
63
+ },
64
+ outputs: {
65
+ smart_auth_info: { name: :smart_auth_info }
66
+ }
67
+ )
68
+
61
69
  input :url,
62
70
  title: 'FHIR Endpoint',
63
71
  description: 'URL of the FHIR endpoint'
64
72
 
65
73
  fhir_client do
66
74
  url :url
67
- oauth_credentials :smart_credentials
75
+ auth_info :smart_auth_info
68
76
  end
69
77
 
70
78
  group from: :<%= smart_launch_group_id %>
@@ -77,11 +85,10 @@ module CarinForBlueButtonTestKit
77
85
  conformant C4BB resources.
78
86
  )
79
87
 
80
- input :smart_credentials,
88
+ input :smart_auth_info,
81
89
  title: 'OAuth Credentials',
82
- type: :oauth_credentials,
90
+ type: :auth_info,
83
91
  optional: true
84
- input_order :url, :smart_credentials
85
92
 
86
93
  group from: :capability_statement_group
87
94
  <% group_id_list.each do |id| %>
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CarinForBlueButtonTestKit
4
- VERSION = '0.14.0'
5
- LAST_UPDATED = '2025-02-25'.freeze
4
+ VERSION = '0.15.0'
5
+ LAST_UPDATED = '2025-03-25'.freeze
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carin_for_blue_button_test_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.15.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Morrison
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-02-25 00:00:00.000000000 Z
11
+ date: 2025-03-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: inferno_core
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.6.2
19
+ version: 0.6.7
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.6.2
26
+ version: 0.6.7
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: smart_app_launch_test_kit
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.5.0
33
+ version: 0.6.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 0.5.0
40
+ version: 0.6.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: database_cleaner-sequel
43
43
  requirement: !ruby/object:Gem::Requirement