Class: DaVinciDTRTestKit::MockPayer::FullEHRV220QuestionnairePackageEndpoint
- Inherits:
-
Inferno::DSL::SuiteEndpoint
- Object
- Inferno::DSL::SuiteEndpoint
- DaVinciDTRTestKit::MockPayer::FullEHRV220QuestionnairePackageEndpoint
- Defined in:
- lib/davinci_dtr_test_kit/full_ehr/v2.2.0/full_ehr_questionnaire_package_endpoint.rb
Constant Summary
Constants included from ResponseSelectionUtils
ResponseSelectionUtils::INFERNO_CONTROL_EXTENSION_URLS
Instance Method Summary collapse
Methods included from ResponseSelectionUtils
#count_previous_successful_requests, #entity_has_inclusion_criteria?, #entity_has_request_range_criteria?, #include_entity?, #ranges_cover_value?, #request_meets_inclusion_criteria?, #request_meets_request_range_criteria?, #strip_inferno_extensions
Methods included from FhirpathUtils
#calculate_expression_string_value, #execute_fhirpath, #fhirpath_evaluator, #interpret_fhirpath_result_as_boolean, #replace_tokens_in_string
Methods included from DaVinciDTRTestKit::MockPayer
#build_outcome_param, #find_questionnaire_response, #operation_outcome, #outcome_issue, #parse_fhir_object
Instance Method Details
#make_response ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/davinci_dtr_test_kit/full_ehr/v2.2.0/full_ehr_questionnaire_package_endpoint.rb', line 33 def make_response response.headers['Access-Control-Allow-Origin'] = '*' return if response.status == 401 # response set in update_result (expired token handling there) response.format = 'application/fhir+json' response.body = response_body.to_json response.status = if response_body.is_a?(FHIR::OperationOutcome) 400 else 200 end rescue StandardError => e Inferno::Application['logger'].error("Error responding to $questionnaire-package:\n#{e.full_message}") response.body = operation_outcome( 'fatal', 'processing', e. ).to_json response.status = 500 end |
#tags ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/davinci_dtr_test_kit/full_ehr/v2.2.0/full_ehr_questionnaire_package_endpoint.rb', line 23 def = [QUESTIONNAIRE_PACKAGE_TAG] << test.config.[:dtr_workflow_tag] if test.config.[:dtr_workflow_tag].present? unless test.config.[:dtr_exclude_from_questionnaire_must_support] << CLIENT_QUESTIONNAIRE_MUST_SUPPORT end end |
#test_run_identifier ⇒ Object
15 16 17 18 19 20 21 |
# File 'lib/davinci_dtr_test_kit/full_ehr/v2.2.0/full_ehr_questionnaire_package_endpoint.rb', line 15 def test_run_identifier return request.params[:session_path] if request.params[:session_path].present? UDAPSecurityTestKit::MockUDAPServer.issued_token_to_client_id( request.headers['authorization']&.delete_prefix('Bearer ') ) end |
#update_result ⇒ Object
55 56 57 58 59 |
# File 'lib/davinci_dtr_test_kit/full_ehr/v2.2.0/full_ehr_questionnaire_package_endpoint.rb', line 55 def update_result return unless UDAPSecurityTestKit::MockUDAPServer.request_has_expired_token?(request) UDAPSecurityTestKit::MockUDAPServer.update_response_for_expired_token(response, 'Bearer token') end |