inferno_core 0.4.37 → 0.4.39

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,4 @@
1
+ require_relative '../dsl/auth_info'
1
2
  require_relative '../dsl/oauth_credentials'
2
3
 
3
4
  module Inferno
@@ -21,7 +22,7 @@ module Inferno
21
22
  )
22
23
  end
23
24
 
24
- def load(test_session_id:, name:, type: 'text')
25
+ def load(test_session_id:, name:, type: 'text') # rubocop:disable Metrics/CyclomaticComplexity
25
26
  raw_value =
26
27
  self.class::Model
27
28
  .find(test_session_id:, name: name.to_s.downcase)
@@ -32,6 +33,8 @@ module Inferno
32
33
  DSL::OAuthCredentials.new(JSON.parse(raw_value || '{}'))
33
34
  when 'checkbox'
34
35
  JSON.parse(raw_value || '[]')
36
+ when 'auth_info'
37
+ DSL::AuthInfo.new(JSON.parse(raw_value || '{}'))
35
38
  else
36
39
  raw_value
37
40
  end
@@ -64,6 +67,8 @@ module Inferno
64
67
  serialize_checkbox_input(params)
65
68
  when 'oauth_credentials'
66
69
  serialize_oauth_credentials_input(params)
70
+ when 'auth_info'
71
+ serialize_auth_info(params)
67
72
  else
68
73
  raise Exceptions::UnknownSessionDataType, params
69
74
  end
@@ -103,6 +108,24 @@ module Inferno
103
108
  credentials.to_s
104
109
  end
105
110
 
111
+ def serialize_auth_info(params)
112
+ auth =
113
+ if params[:value].is_a? String
114
+ DSL::AuthInfo.new(JSON.parse(params[:value]))
115
+ elsif !params[:value].is_a? DSL::AuthInfo
116
+ raise Exceptions::BadSessionDataType.new(
117
+ params[:name],
118
+ DSL::AuthInfo.name,
119
+ params[:value].class
120
+ )
121
+ else
122
+ params[:value]
123
+ end
124
+
125
+ auth.name = params[:name]
126
+ auth.to_s
127
+ end
128
+
106
129
  class Model < Sequel::Model(db)
107
130
  many_to_one :test_session, class: 'Inferno::Repositories::TestSessions::Model', key: :test_session_id
108
131
  end
@@ -34,7 +34,7 @@ module Inferno
34
34
 
35
35
  # rack.after_reply is handled by puma, which doesn't process requests
36
36
  # in unit tests, so we manually run them when in the test environment
37
- env['rack.after_reply']&.each(&:call) if (ENV['APP_ENV'] = 'test')
37
+ env['rack.after_reply']&.each(&:call) if ENV['APP_ENV'] == 'test'
38
38
 
39
39
  response
40
40
  end
@@ -1,4 +1,4 @@
1
1
  module Inferno
2
2
  # Standard patterns for gem versions: https://guides.rubygems.org/patterns/
3
- VERSION = '0.4.37'.freeze
3
+ VERSION = '0.4.39'.freeze
4
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inferno_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.37
4
+ version: 0.4.39
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen MacVicar
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2024-05-13 00:00:00.000000000 Z
13
+ date: 2024-06-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -312,14 +312,14 @@ dependencies:
312
312
  requirements:
313
313
  - - "~>"
314
314
  - !ruby/object:Gem::Version
315
- version: 6.5.6
315
+ version: 7.2.4
316
316
  type: :runtime
317
317
  prerelease: false
318
318
  version_requirements: !ruby/object:Gem::Requirement
319
319
  requirements:
320
320
  - - "~>"
321
321
  - !ruby/object:Gem::Version
322
- version: 6.5.6
322
+ version: 7.2.4
323
323
  - !ruby/object:Gem::Dependency
324
324
  name: sqlite3
325
325
  requirement: !ruby/object:Gem::Requirement
@@ -578,6 +578,7 @@ files:
578
578
  - lib/inferno/apps/cli/templates/docker-compose.yml.tt
579
579
  - lib/inferno/apps/cli/templates/lib/%library_name%.rb.tt
580
580
  - lib/inferno/apps/cli/templates/lib/%library_name%/igs/.keep
581
+ - lib/inferno/apps/cli/templates/lib/%library_name%/igs/README.md
581
582
  - lib/inferno/apps/cli/templates/lib/%library_name%/igs/put_ig_package_dot_tgz_here
582
583
  - lib/inferno/apps/cli/templates/lib/%library_name%/patient_group.rb.tt
583
584
  - lib/inferno/apps/cli/templates/run.sh
@@ -642,6 +643,7 @@ files:
642
643
  - lib/inferno/db/schema.rb
643
644
  - lib/inferno/dsl.rb
644
645
  - lib/inferno/dsl/assertions.rb
646
+ - lib/inferno/dsl/auth_info.rb
645
647
  - lib/inferno/dsl/configurable.rb
646
648
  - lib/inferno/dsl/fhir_client.rb
647
649
  - lib/inferno/dsl/fhir_client_builder.rb