davinci_pas_test_kit 0.15.2 → 0.16.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 +4 -4
- data/config/presets/g33_br_provider.json +13 -0
- data/lib/davinci_pas_test_kit/client/abstract_approval_submit_test.rb +28 -17
- data/lib/davinci_pas_test_kit/client/abstract_denial_submit_test.rb +26 -16
- data/lib/davinci_pas_test_kit/client/abstract_gather_must_support_test.rb +43 -26
- data/lib/davinci_pas_test_kit/client/abstract_modification_submit_test.rb +29 -19
- data/lib/davinci_pas_test_kit/client/abstract_response_attest.rb +75 -6
- data/lib/davinci_pas_test_kit/client/abstract_subscription_create_test.rb +26 -9
- data/lib/davinci_pas_test_kit/client/abstract_subscription_update_delete_test.rb +91 -0
- data/lib/davinci_pas_test_kit/client/client_bundle_validation_helper.rb +245 -0
- data/lib/davinci_pas_test_kit/client/client_input_descriptions.rb +91 -25
- data/lib/davinci_pas_test_kit/client/endpoints/claim_endpoint.rb +108 -68
- data/lib/davinci_pas_test_kit/client/endpoints/endpoint_session_identification.rb +24 -0
- data/lib/davinci_pas_test_kit/client/endpoints/expired_token.rb +40 -0
- data/lib/davinci_pas_test_kit/client/endpoints/subscription_create_endpoint.rb +7 -12
- data/lib/davinci_pas_test_kit/client/endpoints/subscription_delete_endpoint.rb +13 -0
- data/lib/davinci_pas_test_kit/client/endpoints/subscription_read_endpoint.rb +13 -0
- data/lib/davinci_pas_test_kit/client/endpoints/subscription_status_endpoint.rb +15 -20
- data/lib/davinci_pas_test_kit/client/endpoints/subscription_update_endpoint.rb +13 -0
- data/lib/davinci_pas_test_kit/client/endpoints/token_endpoint.rb +16 -0
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/beneficiary/client_inquire_request_must_support_beneficiary_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/beneficiary/client_inquire_response_must_support_beneficiary_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/beneficiary/client_submit_request_must_support_beneficiary_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/beneficiary/client_submit_response_must_support_beneficiary_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/claim_inquiry/client_inquire_request_must_support_claim_inquiry_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/claim_update/client_submit_request_must_support_claim_update_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/claiminquiryresponse/client_inquire_response_must_support_claiminquiryresponse_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/claimresponse/client_submit_response_must_support_claimresponse_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/communication_request/client_submit_response_must_support_communication_request_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/coverage/client_inquire_request_must_support_coverage_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/coverage/client_submit_request_must_support_coverage_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/encounter/client_submit_request_must_support_encounter_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_inquire_request_must_support_insurer_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_inquire_response_must_support_insurer_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_submit_request_must_support_insurer_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/insurer/client_submit_response_must_support_insurer_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_inquire_must_support_group.rb +1 -1
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_inquire_response_must_support_group.rb +9 -31
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_submit_must_support_group.rb +1 -1
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_client_submit_response_must_support_group.rb +10 -32
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_inquiry_request_bundle/client_inquire_request_must_support_pas_inquiry_request_bundle_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_inquiry_response_bundle/client_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_request_bundle/client_submit_request_must_support_pas_request_bundle_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/pas_response_bundle/client_submit_response_must_support_pas_response_bundle_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_inquire_request_must_support_practitioner_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_inquire_response_must_support_practitioner_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_submit_request_must_support_practitioner_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner/client_submit_response_must_support_practitioner_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_inquire_request_must_support_practitioner_role_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_inquire_response_must_support_practitioner_role_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_submit_request_must_support_practitioner_role_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/practitioner_role/client_submit_response_must_support_practitioner_role_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_inquire_request_must_support_requestor_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_inquire_response_must_support_requestor_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_submit_request_must_support_requestor_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/requestor/client_submit_response_must_support_requestor_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/subscriber/client_inquire_request_must_support_subscriber_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/subscriber/client_submit_request_must_support_subscriber_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/beneficiary/client_inquire_response_must_support_beneficiary_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/beneficiary/client_submit_response_must_support_beneficiary_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claim_inquiry/client_inquire_request_must_support_claim_inquiry_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claim_update/client_submit_request_must_support_claim_update_test.rb +3 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claiminquiryresponse/client_inquire_response_must_support_claiminquiryresponse_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/claimresponse/client_submit_response_must_support_claimresponse_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/communication_request/client_submit_response_must_support_communication_request_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/insurer/client_inquire_response_must_support_insurer_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/insurer/client_submit_response_must_support_insurer_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_inquire_must_support_group.rb +8 -6
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_inquire_response_must_support_group.rb +9 -31
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_submit_must_support_group.rb +13 -9
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_client_submit_response_must_support_group.rb +10 -32
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_inquiry_response_bundle/client_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/pas_response_bundle/client_submit_response_must_support_pas_response_bundle_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner/client_inquire_response_must_support_practitioner_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner/client_submit_response_must_support_practitioner_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner_role/client_inquire_response_must_support_practitioner_role_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/practitioner_role/client_submit_response_must_support_practitioner_role_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/requestor/client_inquire_response_must_support_requestor_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/requestor/client_submit_response_must_support_requestor_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/jobs/send_pas_subscription_notification.rb +64 -3
- data/lib/davinci_pas_test_kit/client/pas_client_subscription_pas_conformance_test.rb +4 -3
- data/lib/davinci_pas_test_kit/client/registration/abstract_configuration_other_display_test.rb +6 -4
- data/lib/davinci_pas_test_kit/client/registration/abstract_configuration_smart_display_test.rb +8 -4
- data/lib/davinci_pas_test_kit/client/registration/abstract_configuration_udap_display_test.rb +9 -4
- data/lib/davinci_pas_test_kit/client/registration/abstract_other_auth_attest_test.rb +5 -4
- data/lib/davinci_pas_test_kit/client/request_count_gating.rb +14 -0
- data/lib/davinci_pas_test_kit/client/response_generator.rb +50 -9
- data/lib/davinci_pas_test_kit/client/session_identification.rb +26 -7
- data/lib/davinci_pas_test_kit/client/subscription_notification_trigger.rb +80 -0
- data/lib/davinci_pas_test_kit/client/subscription_setup_requirement.rb +59 -0
- data/lib/davinci_pas_test_kit/client/user_input_response.rb +27 -6
- data/lib/davinci_pas_test_kit/client/v2.0.1/client_suite.rb +30 -15
- data/lib/davinci_pas_test_kit/client/v2.0.1/must_support/pas_client_must_support_request_profiles_test.rb +2 -2
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_approval_group.rb +8 -7
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_auth_smart_group.rb +4 -4
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_auth_udap_group.rb +4 -4
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_denial_group.rb +8 -7
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_must_support_group.rb +38 -52
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_pended_group.rb +28 -22
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_registration_group.rb +2 -2
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_subscription_setup_group.rb +2 -2
- data/lib/davinci_pas_test_kit/client/v2.0.1/pas_client_workflows_group.rb +2 -2
- data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_inquire_request_bundle_validation_test.rb +15 -21
- data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_inquire_response_bundle_validation_test.rb +29 -29
- data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_pended_submit_test.rb +49 -40
- data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_request_bundle_validation_test.rb +15 -21
- data/lib/davinci_pas_test_kit/client/v2.0.1/workflows/pas_client_response_bundle_validation_test.rb +29 -29
- data/lib/davinci_pas_test_kit/client/v2.2.1/attestations/attestation_instructions.rb +10 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/attestations/client_data_element_expectations_attestation_test.rb +44 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/attestations/client_provider_review_attestation_test.rb +45 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/attestations/client_security_attestation_test.rb +42 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/attestations/client_subscription_error_recovery_attestation_test.rb +42 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/client_suite.rb +64 -12
- data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_operation_failure_submit_test.rb +20 -10
- data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_operation_outcome_validation_test.rb +11 -5
- data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_processing_error_response_validation_test.rb +21 -12
- data/lib/davinci_pas_test_kit/client/v2.2.1/error_handling/pas_client_processing_error_submit_test.rb +19 -8
- data/lib/davinci_pas_test_kit/client/v2.2.1/must_support/must_support_with_attestation_option.rb +90 -40
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_approval_group.rb +12 -11
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_attestations_group.rb +32 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_auth_smart_group.rb +4 -4
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_auth_udap_group.rb +4 -4
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_claim_updates_group.rb +24 -6
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_denial_group.rb +12 -10
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_modification_group.rb +13 -14
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_must_support_group.rb +55 -59
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_operation_failure_group.rb +8 -5
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_pended_group.rb +53 -41
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_processing_error_group.rb +9 -7
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_registration_group.rb +2 -2
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_subscription_setup_group.rb +9 -4
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_subscription_update_delete_group.rb +57 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_workflows_group.rb +22 -2
- data/lib/davinci_pas_test_kit/client/v2.2.1/subscription/pas_client_subscription_create_test.rb +2 -1
- data/lib/davinci_pas_test_kit/client/v2.2.1/subscription/pas_client_subscription_put_update_pas_conformance_test.rb +49 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/subscription/pas_client_subscription_update_delete_test.rb +12 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_referenced_resources_test.rb +5 -6
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_claim_update_submit_tests.rb +82 -56
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_inquire_request_bundle_validation_test.rb +17 -20
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_inquire_response_bundle_validation_test.rb +59 -27
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_modification_verification_test.rb +0 -3
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_pended_send_notification_test.rb +138 -0
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_pended_submit_test.rb +32 -85
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_request_bundle_validation_test.rb +16 -21
- data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_response_bundle_validation_test.rb +27 -27
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.0.1/task/metadata.yml +0 -4
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/metadata.yml +0 -1
- data/lib/davinci_pas_test_kit/cross_suite/generated/v2.2.1/task/metadata.yml +0 -4
- data/lib/davinci_pas_test_kit/cross_suite/pas_bundle_validation.rb +489 -289
- data/lib/davinci_pas_test_kit/cross_suite/pas_constants.rb +7 -0
- data/lib/davinci_pas_test_kit/cross_suite/pas_subscription_verification.rb +8 -4
- data/lib/davinci_pas_test_kit/cross_suite/referenced_resource_presence_validation.rb +141 -0
- data/lib/davinci_pas_test_kit/cross_suite/response_selection_utils.rb +13 -11
- data/lib/davinci_pas_test_kit/cross_suite/tags.rb +11 -6
- data/lib/davinci_pas_test_kit/cross_suite/validator_configuration.rb +16 -0
- data/lib/davinci_pas_test_kit/cross_suite/validator_suppressions.rb +4 -0
- data/lib/davinci_pas_test_kit/docs/demo/PAS Client Suite Demonstration.postman_collection.json +3 -3
- data/lib/davinci_pas_test_kit/ext/inferno_core/runnable.rb +1 -0
- data/lib/davinci_pas_test_kit/generator/client_must_support_group_generator.rb +47 -16
- data/lib/davinci_pas_test_kit/generator/must_support_target_profiles.rb +17 -0
- data/lib/davinci_pas_test_kit/generator/must_support_test_generator.rb +8 -2
- data/lib/davinci_pas_test_kit/generator/profile_metadata.rb +1 -1
- data/lib/davinci_pas_test_kit/generator/server_suite_generator.rb +4 -9
- data/lib/davinci_pas_test_kit/generator/templates/client_must_support_group.rb.erb +22 -3
- data/lib/davinci_pas_test_kit/generator/templates/client_must_support_response_group.rb.erb +7 -16
- data/lib/davinci_pas_test_kit/generator/templates/must_support.rb.erb +8 -8
- data/lib/davinci_pas_test_kit/generator/templates/server_suite.rb.erb +6 -7
- data/lib/davinci_pas_test_kit/generator/use_case_group_generator.rb +5 -5
- data/lib/davinci_pas_test_kit/parameters_helper.rb +13 -5
- data/lib/davinci_pas_test_kit/pas_notification_conformance_test.rb +2 -2
- data/lib/davinci_pas_test_kit/requirements/davinci_pas_test_kit_requirements.csv +14 -7
- data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_client_suite_v201_requirements_coverage.csv +21 -21
- data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_client_suite_v221_requirements_coverage.csv +30 -26
- data/lib/davinci_pas_test_kit/requirements/generated/davinci_pas_server_suite_v221_requirements_coverage.csv +12 -6
- data/lib/davinci_pas_test_kit/requirements/hl7.fhir.us.davinci-pas_2.2.1_requirements.xlsx +0 -0
- data/lib/davinci_pas_test_kit/server/claim_operation_logic.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/beneficiary/server_inquire_request_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/beneficiary/server_inquire_response_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/beneficiary/server_submit_request_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/beneficiary/server_submit_response_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/claim_inquiry/server_inquire_request_must_support_claim_inquiry_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/claim_update/server_submit_request_must_support_claim_update_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/claiminquiryresponse/server_inquire_response_must_support_claiminquiryresponse_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/claimresponse/server_submit_response_must_support_claimresponse_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/communication_request/server_submit_response_must_support_communication_request_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/coverage/server_inquire_request_must_support_coverage_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/coverage/server_submit_request_must_support_coverage_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/encounter/server_submit_request_must_support_encounter_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_inquire_request_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_inquire_response_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_submit_request_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/insurer/server_submit_response_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_inquiry_request_bundle/server_inquire_request_must_support_pas_inquiry_request_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_inquiry_response_bundle/server_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_request_bundle/server_submit_request_must_support_pas_request_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_response_bundle/server_submit_response_must_support_pas_response_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_approval_use_case_group.rb +3 -3
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_denial_use_case_group.rb +3 -3
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/pas_server_pended_use_case_group.rb +6 -6
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_inquire_request_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_inquire_response_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_submit_request_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner/server_submit_response_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_inquire_request_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_inquire_response_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_submit_request_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/practitioner_role/server_submit_response_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/requestor/server_inquire_request_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/requestor/server_inquire_response_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/requestor/server_submit_request_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/requestor/server_submit_response_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/server_suite.rb +6 -7
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/subscriber/server_inquire_request_must_support_subscriber_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/subscriber/server_submit_request_must_support_subscriber_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/task/server_inquire_response_must_support_task_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.0.1/task/server_submit_response_must_support_task_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_inquire_request_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_inquire_response_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_submit_request_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/beneficiary/server_submit_response_must_support_beneficiary_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claim_inquiry/server_inquire_request_must_support_claim_inquiry_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claim_update/server_submit_request_must_support_claim_update_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claiminquiryresponse/server_inquire_response_must_support_claiminquiryresponse_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/claimresponse/server_submit_response_must_support_claimresponse_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/communication_request/server_submit_response_must_support_communication_request_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/coverage/server_inquire_request_must_support_coverage_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/coverage/server_submit_request_must_support_coverage_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/encounter/server_submit_request_must_support_encounter_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_inquire_request_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_inquire_response_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_submit_request_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/insurer/server_submit_response_must_support_insurer_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_inquiry_request_bundle/server_inquire_request_must_support_pas_inquiry_request_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_inquiry_response_bundle/server_inquire_response_must_support_pas_inquiry_response_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_request_bundle/server_submit_request_must_support_pas_request_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_response_bundle/server_submit_response_must_support_pas_response_bundle_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_approval_use_case_group.rb +3 -3
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_denial_use_case_group.rb +3 -3
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/pas_server_pended_use_case_group.rb +4 -4
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_inquire_request_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_inquire_response_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_submit_request_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner/server_submit_response_must_support_practitioner_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_inquire_request_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_inquire_response_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_submit_request_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/practitioner_role/server_submit_response_must_support_practitioner_role_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_inquire_request_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_inquire_response_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_submit_request_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/requestor/server_submit_response_must_support_requestor_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/server_suite.rb +6 -7
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/subscriber/server_inquire_request_must_support_subscriber_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/subscriber/server_submit_request_must_support_subscriber_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/task/server_inquire_response_must_support_task_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/generated/v2.2.1/task/server_submit_response_must_support_task_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/pas_claim_response_decision_test.rb +2 -2
- data/lib/davinci_pas_test_kit/server/server_request_bundle_validation_test.rb +4 -6
- data/lib/davinci_pas_test_kit/server/server_response_bundle_validation_test.rb +4 -6
- data/lib/davinci_pas_test_kit/server/v2.0.1/must_support/pas_server_must_support_request_profiles_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/v2.0.1/pas_server_subscription_setup.rb +1 -1
- data/lib/davinci_pas_test_kit/server/v2.2.1/must_support/pas_server_must_support_request_profiles_test.rb +1 -1
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_claim_updates_group.rb +1 -1
- data/lib/davinci_pas_test_kit/server/v2.2.1/pas_server_subscription_setup.rb +1 -1
- data/lib/davinci_pas_test_kit/version.rb +2 -2
- metadata +31 -13
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/task/client_inquire_response_must_support_task_test.rb +0 -45
- data/lib/davinci_pas_test_kit/client/generated/v2.0.1/task/client_submit_response_must_support_task_test.rb +0 -45
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/task/client_inquire_response_must_support_task_test.rb +0 -55
- data/lib/davinci_pas_test_kit/client/generated/v2.2.1/task/client_submit_response_must_support_task_test.rb +0 -55
- data/lib/davinci_pas_test_kit/client/v2.2.1/pas_client_error_handling_group.rb +0 -20
|
@@ -3,6 +3,7 @@ require_relative '../../client_input_descriptions'
|
|
|
3
3
|
require_relative '../../user_input_response'
|
|
4
4
|
require_relative '../../../cross_suite/pas_bundle_validation'
|
|
5
5
|
require_relative '../../session_identification'
|
|
6
|
+
require_relative '../../subscription_setup_requirement'
|
|
6
7
|
|
|
7
8
|
module DaVinciPASTestKit
|
|
8
9
|
module DaVinciPASV221
|
|
@@ -11,55 +12,24 @@ module DaVinciPASTestKit
|
|
|
11
12
|
include SessionIdentification
|
|
12
13
|
include UserInputResponse
|
|
13
14
|
include PasBundleValidation
|
|
15
|
+
include SubscriptionSetupRequirement
|
|
14
16
|
|
|
15
17
|
id :pas_client_v221_pended_submit_test
|
|
16
|
-
title 'PAS
|
|
18
|
+
title 'PAS client submits a claim using the $submit operation'
|
|
17
19
|
description %(
|
|
18
|
-
Inferno will wait for a prior authorization submission request
|
|
19
|
-
from the client. Upon receipt, Inferno will respond
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
During this test, Inferno will wait for a prior authorization submission request
|
|
21
|
+
from the PAS client using the `$submit` operation. Upon receipt, Inferno will respond
|
|
22
|
+
with a [tester-provided](https://github.com/inferno-framework/davinci-pas-test-kit/wiki/Controlling-Simulated-Responses#tester-directed-custom-responses)
|
|
23
|
+
or [Inferno-mocked](https://github.com/inferno-framework/davinci-pas-test-kit/wiki/Controlling-Simulated-Responses#mocked-responses)
|
|
24
|
+
pended response. Inferno will not respond to `$inquire` operation requests during
|
|
25
|
+
this test.
|
|
24
26
|
)
|
|
25
27
|
|
|
26
|
-
config options: { accepts_multiple_requests: true }
|
|
27
|
-
input :notification_bundle,
|
|
28
|
-
title: 'Claim updated notification JSON',
|
|
29
|
-
type: 'textarea',
|
|
30
|
-
optional: true,
|
|
31
|
-
description: %(
|
|
32
|
-
If provided, this JSON will be sent as the notification for the
|
|
33
|
-
PAS Subscription to tell the client that a decision has been made on the pended claim.
|
|
34
|
-
Before sending, Inferno will update the provided notification with details that the tester cannot
|
|
35
|
-
know ahead of time, including timestamps corresponding to the notification trigger time, and the id of
|
|
36
|
-
the triggering ClaimResponse if Inferno mocks that ClaimResponse because it is not provided by the
|
|
37
|
-
tester through the *Claim pended response JSON* input.
|
|
38
|
-
If not provided, a notification will be generated from the returned ClaimResponse.
|
|
39
|
-
In either case the response will be validated to ensure that the notification
|
|
40
|
-
is conformant. For v2.2.1, the notification will be a full-resource notification
|
|
41
|
-
containing the complete ClaimResponse.
|
|
42
|
-
)
|
|
43
28
|
input :pended_json_response,
|
|
44
29
|
title: 'Claim pended response JSON',
|
|
45
30
|
type: 'textarea',
|
|
46
31
|
optional: true,
|
|
47
|
-
description:
|
|
48
|
-
If provided, this JSON will be sent in response to $submit requests during this test
|
|
49
|
-
to indicate that the request has been pended awaiting a final decision.
|
|
50
|
-
It will be updated to make creation timestamps current.
|
|
51
|
-
If not provided, a pended response will be generated from the submitted Claim.
|
|
52
|
-
In either case the response will be validated against the PAS Response Bundle profile.
|
|
53
|
-
)
|
|
54
|
-
input :client_endpoint_access_token,
|
|
55
|
-
optional: true,
|
|
56
|
-
title: 'Client Notification Access Token',
|
|
57
|
-
description: %(
|
|
58
|
-
The bearer token that Inferno will send on requests to the client under test's rest-hook notification
|
|
59
|
-
endpoint. Not needed if the client under test will create a Subscription with an appropriate header value
|
|
60
|
-
in the `channel.header` element. If a value for the `authorization` header is provided in
|
|
61
|
-
`channel.header`, this value will override it.
|
|
62
|
-
)
|
|
32
|
+
description: DaVinciPASTestKit.user_response_input_description('$submit', 'pended', 'Pended Response')
|
|
63
33
|
input :client_id,
|
|
64
34
|
title: 'Client Id',
|
|
65
35
|
type: 'text',
|
|
@@ -74,16 +44,10 @@ module DaVinciPASTestKit
|
|
|
74
44
|
description: INPUT_SESSION_URL_PATH_LOCKED
|
|
75
45
|
|
|
76
46
|
submit_respond_with :pended_json_response
|
|
77
|
-
|
|
47
|
+
config options: { submit_enabled: true, suppress_notifications: true } # handling notification separately
|
|
78
48
|
|
|
79
49
|
run do
|
|
80
|
-
|
|
81
|
-
skip_if requests.empty?, # NOTE: subscription needed ahead of time to support notification generation
|
|
82
|
-
%(
|
|
83
|
-
Pended workflow tests cannot proceed because no Subscription exists to receive notifications
|
|
84
|
-
for pended claims. Run the _PAS Subscription Setup_ tests to provide a Subscription for use
|
|
85
|
-
in delivering notifications before re-running the pended workflow tests.
|
|
86
|
-
)
|
|
50
|
+
require_unmodified_subscription
|
|
87
51
|
|
|
88
52
|
if user_inputted_response? :pended_json_response
|
|
89
53
|
assert_valid_json pended_json_response,
|
|
@@ -95,52 +59,35 @@ module DaVinciPASTestKit
|
|
|
95
59
|
))
|
|
96
60
|
end
|
|
97
61
|
|
|
98
|
-
if notification_bundle.present?
|
|
99
|
-
assert_valid_json notification_bundle,
|
|
100
|
-
"Input '#{input_title(:notification_bundle)}' must be valid JSON"
|
|
101
|
-
else
|
|
102
|
-
add_message('info', %(
|
|
103
|
-
No notification body provided in input '#{input_title(:notification_bundle)}'. When sending a
|
|
104
|
-
notification finalizing a pended $submit response, the notification body will be generated by Inferno
|
|
105
|
-
from the submitted Claim.
|
|
106
|
-
))
|
|
107
|
-
end
|
|
108
|
-
|
|
109
62
|
wait_identifier = session_wait_identifier(client_id, session_url_path)
|
|
110
63
|
submit_endpoint = session_endpoint_url(:submit, client_id, session_url_path)
|
|
111
|
-
confirmation_url = "#{resume_pass_url}?token=#{wait_identifier}"
|
|
112
|
-
output(confirmation_url:)
|
|
113
64
|
|
|
114
65
|
wait(
|
|
115
66
|
identifier: wait_identifier,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
67
|
+
message: <<~MESSAGE
|
|
68
|
+
**Pended Scenario Test**:
|
|
69
|
+
|
|
70
|
+
Inferno will wait while the tester uses the PAS client to submit a PAS request to
|
|
71
|
+
Inferno. The tests will automatically continue once a request has been received.
|
|
119
72
|
|
|
120
|
-
|
|
73
|
+
### Endpoints
|
|
74
|
+
|
|
75
|
+
Submit a PAS request to
|
|
121
76
|
|
|
122
77
|
`#{submit_endpoint}`
|
|
123
78
|
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
i.e., that the system marked the pended prior auth request appropriately after step 1 (submit) but
|
|
137
|
-
before step 2 (notification). Thus testers should check their system state as appropriate in order
|
|
138
|
-
to be able to faithfully answer the attestations.
|
|
139
|
-
|
|
140
|
-
Once the client has completed these steps,
|
|
141
|
-
[click here to complete the test](#{confirmation_url})
|
|
142
|
-
and continue Inferno's evaluation of the interaction.
|
|
143
|
-
)
|
|
79
|
+
### Authentication and Identification
|
|
80
|
+
|
|
81
|
+
#{auth_description_for_wait(client_id)}
|
|
82
|
+
|
|
83
|
+
### Responses
|
|
84
|
+
|
|
85
|
+
#{response_description_for_wait(user_inputted_response?(:pended_json_response),
|
|
86
|
+
input_title(:pended_json_response),
|
|
87
|
+
'$submit')}
|
|
88
|
+
|
|
89
|
+
Inferno will not respond to `$inquire` requests during this test.
|
|
90
|
+
MESSAGE
|
|
144
91
|
)
|
|
145
92
|
end
|
|
146
93
|
end
|
data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_request_bundle_validation_test.rb
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
require_relative '../../../cross_suite/pas_bundle_validation'
|
|
2
|
+
require_relative '../../client_bundle_validation_helper'
|
|
2
3
|
|
|
3
4
|
module DaVinciPASTestKit
|
|
4
5
|
module DaVinciPASV221
|
|
5
6
|
class PasClientRequestBundleValidationTest < Inferno::Test
|
|
6
7
|
include DaVinciPASTestKit::PasBundleValidation
|
|
8
|
+
include DaVinciPASTestKit::ClientBundleValidationHelper
|
|
7
9
|
|
|
8
10
|
id :pas_client_v221_request_bundle_validation_test
|
|
9
11
|
title '$submit request Bundles have the correct structure and content'
|
|
10
12
|
description %(
|
|
11
|
-
This test verifies the conformity of the client's submit request
|
|
13
|
+
This test verifies the conformity of each of the PAS client's `$submit` request bodies to the
|
|
12
14
|
[PAS Request Bundle](http://hl7.org/fhir/us/davinci-pas/2.2.1/StructureDefinition-profile-pas-request-bundle.html)
|
|
13
15
|
structure. It also checks that other conformance requirements defined in the [PAS Formal
|
|
14
16
|
Specification](https://hl7.org/fhir/us/davinci-pas/2.2.1/specification.html),
|
|
@@ -24,32 +26,25 @@ module DaVinciPASTestKit
|
|
|
24
26
|
Note that because X12 value sets are not public, elements bound to value
|
|
25
27
|
sets containing X12 codes are not validated.
|
|
26
28
|
)
|
|
27
|
-
verifies_requirements 'hl7.fhir.us.davinci-pas_2.2.1@spec-1'
|
|
29
|
+
verifies_requirements 'hl7.fhir.us.davinci-pas_2.2.1@spec-1', 'hl7.fhir.us.davinci-pas_2.2.1@prof-1',
|
|
30
|
+
'hl7.fhir.us.davinci-pas_2.2.1@prof-2', 'hl7.fhir.us.davinci-pas_2.2.1@prof-3'
|
|
28
31
|
|
|
29
|
-
def
|
|
30
|
-
|
|
32
|
+
def operation_name
|
|
33
|
+
'submit'
|
|
31
34
|
end
|
|
32
35
|
|
|
33
|
-
def
|
|
34
|
-
|
|
36
|
+
def message_direction_name
|
|
37
|
+
'request'
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def ig_version
|
|
41
|
+
'2.2.1'
|
|
35
42
|
end
|
|
36
43
|
|
|
37
44
|
run do
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
load_tagged_requests(request_type_tag)
|
|
42
|
-
end
|
|
43
|
-
skip_if !request.present?, 'No submit requests received.'
|
|
44
|
-
|
|
45
|
-
validate_pas_bundle_json(
|
|
46
|
-
request.request_body,
|
|
47
|
-
'http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-request-bundle',
|
|
48
|
-
'2.2.1',
|
|
49
|
-
'submit',
|
|
50
|
-
'request_bundle',
|
|
51
|
-
message: 'The Bundle provided for the Claim/$submit operation is invalid:'
|
|
52
|
-
)
|
|
45
|
+
failed = non_conformant_bundles
|
|
46
|
+
assert failed.empty?,
|
|
47
|
+
"Non-conformant request Bundles detected: #{failed.join(', ')}. Check messages for issues found."
|
|
53
48
|
end
|
|
54
49
|
end
|
|
55
50
|
end
|
data/lib/davinci_pas_test_kit/client/v2.2.1/workflows/pas_client_response_bundle_validation_test.rb
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
require_relative '../../../cross_suite/pas_bundle_validation'
|
|
2
2
|
require_relative '../../user_input_response'
|
|
3
|
-
require_relative '../../
|
|
3
|
+
require_relative '../../client_bundle_validation_helper'
|
|
4
4
|
|
|
5
5
|
module DaVinciPASTestKit
|
|
6
6
|
module DaVinciPASV221
|
|
7
7
|
class PasClientResponseBundleValidationTest < Inferno::Test
|
|
8
8
|
include DaVinciPASTestKit::PasBundleValidation
|
|
9
9
|
include UserInputResponse
|
|
10
|
-
include
|
|
10
|
+
include DaVinciPASTestKit::ClientBundleValidationHelper
|
|
11
11
|
|
|
12
12
|
id :pas_client_v221_response_bundle_validation_test
|
|
13
13
|
title '$submit response Bundles have the correct structure and content'
|
|
14
14
|
description %(
|
|
15
|
-
This test verifies the conformity of
|
|
15
|
+
This test verifies the conformity of each `$submit` response sent by Inferno, which will have been
|
|
16
16
|
either:
|
|
17
17
|
- the response body provided by the tester in the corresponding input, or
|
|
18
18
|
- created by Inferno from the $submit Bundle.
|
|
@@ -30,17 +30,24 @@ module DaVinciPASTestKit
|
|
|
30
30
|
to the bound ValueSet. Quantity, Coding, and code element bindings will
|
|
31
31
|
fail if their code/system are not found in the valueset.
|
|
32
32
|
|
|
33
|
-
Note that
|
|
34
|
-
|
|
33
|
+
Note that:
|
|
34
|
+
- To ensure that the PAS client is driving its behavior only based on standard
|
|
35
|
+
PAS information, custom extensions are not allowed within the responses.
|
|
36
|
+
- Because X12 value sets are not public, elements bound to value
|
|
37
|
+
sets containing X12 codes are not validated.
|
|
35
38
|
)
|
|
36
39
|
simulation_verification
|
|
37
40
|
|
|
38
|
-
def
|
|
41
|
+
def operation_name
|
|
39
42
|
'submit'
|
|
40
43
|
end
|
|
41
44
|
|
|
42
|
-
def
|
|
43
|
-
|
|
45
|
+
def message_direction_name
|
|
46
|
+
'response'
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def ig_version
|
|
50
|
+
'2.2.1'
|
|
44
51
|
end
|
|
45
52
|
|
|
46
53
|
def target_user_input
|
|
@@ -58,26 +65,19 @@ module DaVinciPASTestKit
|
|
|
58
65
|
end
|
|
59
66
|
end
|
|
60
67
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
else
|
|
69
|
-
'Invalid response generated from the submitted claim:'
|
|
70
|
-
end
|
|
68
|
+
def failed_entities_description
|
|
69
|
+
if user_inputted_response? target_user_input
|
|
70
|
+
"built from tester-provided response in '#{input_title(target_user_input)}'"
|
|
71
|
+
else
|
|
72
|
+
'generated from the submitted claim'
|
|
73
|
+
end
|
|
74
|
+
end
|
|
71
75
|
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
'response_bundle',
|
|
78
|
-
skips: true,
|
|
79
|
-
message:
|
|
80
|
-
)
|
|
76
|
+
run do
|
|
77
|
+
failed = non_conformant_bundles
|
|
78
|
+
skip_if failed.present?,
|
|
79
|
+
"Non-conformant response Bundles #{failed_entities_description}: #{failed.join(', ')}. " \
|
|
80
|
+
'Check messages for issues found.'
|
|
81
81
|
end
|
|
82
82
|
end
|
|
83
83
|
end
|
|
@@ -192,9 +192,5 @@
|
|
|
192
192
|
:tests:
|
|
193
193
|
- :id: pas_server_v201_submit_response_must_support_task
|
|
194
194
|
:file_name: server_submit_response_must_support_task_test.rb
|
|
195
|
-
- :id: pas_client_v201_submit_response_must_support_task
|
|
196
|
-
:file_name: client_submit_response_must_support_task_test.rb
|
|
197
195
|
- :id: pas_server_v201_inquire_response_must_support_task
|
|
198
196
|
:file_name: server_inquire_response_must_support_task_test.rb
|
|
199
|
-
- :id: pas_client_v201_inquire_response_must_support_task
|
|
200
|
-
:file_name: client_inquire_response_must_support_task_test.rb
|
|
@@ -233,9 +233,5 @@
|
|
|
233
233
|
:tests:
|
|
234
234
|
- :id: pas_server_v221_submit_response_must_support_task
|
|
235
235
|
:file_name: server_submit_response_must_support_task_test.rb
|
|
236
|
-
- :id: pas_client_v221_submit_response_must_support_task
|
|
237
|
-
:file_name: client_submit_response_must_support_task_test.rb
|
|
238
236
|
- :id: pas_server_v221_inquire_response_must_support_task
|
|
239
237
|
:file_name: server_inquire_response_must_support_task_test.rb
|
|
240
|
-
- :id: pas_client_v221_inquire_response_must_support_task
|
|
241
|
-
:file_name: client_inquire_response_must_support_task_test.rb
|