inferno_core 1.1.1 → 1.2.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.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/lib/inferno/apps/cli/execute_script.rb +918 -0
  3. data/lib/inferno/apps/cli/main.rb +46 -0
  4. data/lib/inferno/apps/cli/session/cancel_run.rb +47 -0
  5. data/lib/inferno/apps/cli/session/connection.rb +47 -0
  6. data/lib/inferno/apps/cli/session/create_session.rb +159 -0
  7. data/lib/inferno/apps/cli/session/errors.rb +45 -0
  8. data/lib/inferno/apps/cli/session/session_compare.rb +390 -0
  9. data/lib/inferno/apps/cli/session/session_data.rb +39 -0
  10. data/lib/inferno/apps/cli/session/session_details.rb +27 -0
  11. data/lib/inferno/apps/cli/session/session_results.rb +39 -0
  12. data/lib/inferno/apps/cli/session/session_status.rb +69 -0
  13. data/lib/inferno/apps/cli/session/start_run.rb +245 -0
  14. data/lib/inferno/apps/cli/session_commands.rb +66 -0
  15. data/lib/inferno/apps/cli/templates/%library_name%.gemspec.tt +1 -1
  16. data/lib/inferno/apps/cli/templates/.gitignore +4 -0
  17. data/lib/inferno/apps/cli/templates/README.md.tt +14 -0
  18. data/lib/inferno/apps/cli/templates/Rakefile.tt +13 -0
  19. data/lib/inferno/apps/cli/templates/execution_scripts/%library_name%_script.yaml.tt +20 -0
  20. data/lib/inferno/apps/cli/templates/execution_scripts/%library_name%_script_expected.json.tt +244 -0
  21. data/lib/inferno/apps/cli/templates/execution_scripts/README.md.tt +16 -0
  22. data/lib/inferno/apps/web/serializers/test_group.rb +1 -0
  23. data/lib/inferno/dsl/fhir_resource_navigation.rb +145 -27
  24. data/lib/inferno/dsl/must_support_assessment.rb +93 -23
  25. data/lib/inferno/dsl/must_support_metadata_extractor.rb +139 -21
  26. data/lib/inferno/dsl/resume_test_route.rb +4 -3
  27. data/lib/inferno/exceptions.rb +6 -0
  28. data/lib/inferno/public/bundle.js +9 -9
  29. data/lib/inferno/repositories/test_sessions.rb +3 -0
  30. data/lib/inferno/utils/execution_script_runner.rb +90 -0
  31. data/lib/inferno/utils/preset_processor.rb +2 -0
  32. data/lib/inferno/version.rb +1 -1
  33. metadata +18 -2
@@ -44,8 +44,8 @@ module Inferno
44
44
  end
45
45
 
46
46
  # @private
47
- def update_result(waiting_result)
48
- results_repo.update_result(waiting_result.id, result)
47
+ def update_result(waiting_result, message)
48
+ results_repo.update_result(waiting_result.id, result, message)
49
49
  end
50
50
 
51
51
  # @private
@@ -80,6 +80,7 @@ module Inferno
80
80
  request = Inferno::Entities::Request.from_hanami_request(req)
81
81
 
82
82
  test_run_identifier = instance_exec(request, &test_run_identifier_block)
83
+ result_message = request.query_parameters['message']
83
84
 
84
85
  test_run = find_test_run(test_run_identifier)
85
86
 
@@ -90,7 +91,7 @@ module Inferno
90
91
  waiting_result = find_waiting_result(test_run)
91
92
  test = find_test(waiting_result)
92
93
 
93
- update_result(waiting_result)
94
+ update_result(waiting_result, result_message)
94
95
  persist_request(request, test_run, waiting_result, test)
95
96
 
96
97
  Jobs.perform(Jobs::ResumeTestRun, test_run.id)
@@ -120,6 +120,12 @@ module Inferno
120
120
  end
121
121
  end
122
122
 
123
+ class UnknownPreset < RuntimeError
124
+ def initialize(preset_id, suite_id)
125
+ super("Preset '#{preset_id}' not found for suite '#{suite_id}'")
126
+ end
127
+ end
128
+
123
129
  class InvalidRunnableIdException < StandardError
124
130
  def initialize(id)
125
131
  super("ID '#{id}' exceeds the maximum id length of 255 characters")