au_ps_inferno 0.1.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 +7 -0
- data/LICENSE +201 -0
- data/lib/au_ps_inferno/generator/constants.rb +61 -0
- data/lib/au_ps_inferno/generator/generator.rb +76 -0
- data/lib/au_ps_inferno/generator/generator_group_based_metadata_module.rb +113 -0
- data/lib/au_ps_inferno/generator/ig_resources_extractor.rb +149 -0
- data/lib/au_ps_inferno/generator/metadata_manager.rb +608 -0
- data/lib/au_ps_inferno/generator/naming.rb +52 -0
- data/lib/au_ps_inferno/generator/sections_validation_group_generator.rb +182 -0
- data/lib/au_ps_inferno/generator/test_file_generator.rb +77 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_bundle_instance.rb +56 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_bundle_must_support_conformance/suite_au_ps_bundle_instance_au_ps_bundle_must_support_conformance_bundle_must_support_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_bundle_must_support_conformance.rb +16 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_attester/suite_au_ps_bundle_instance_au_ps_composition_attester_attester_party_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_attester/suite_au_ps_bundle_instance_au_ps_composition_attester_attester_party_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_attester/suite_au_ps_bundle_instance_au_ps_composition_attester_attester_party_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_attester.rb +26 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_author/suite_au_ps_bundle_instance_au_ps_composition_author_author_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_author/suite_au_ps_bundle_instance_au_ps_composition_author_author_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_author/suite_au_ps_bundle_instance_au_ps_composition_author_author_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_author/suite_au_ps_bundle_instance_au_ps_composition_author_author_resource_type_is_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_author.rb +28 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_custodian/suite_au_ps_bundle_instance_au_ps_composition_custodian_custodian_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_custodian/suite_au_ps_bundle_instance_au_ps_composition_custodian_custodian_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_custodian/suite_au_ps_bundle_instance_au_ps_composition_custodian_custodian_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_custodian.rb +26 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_mandatory_sections/composition_mandatory_sections_mandatory_sections_entry_profiles.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_mandatory_sections/suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections_sections_shall_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_mandatory_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_mandatory_ms_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_ms_subelements_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_slices.rb +22 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance.rb +28 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_optional_sections/suite_au_ps_bundle_instance_au_ps_composition_optional_sections_optional_sections_entry_profiles.rb +22 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_optional_sections/suite_au_ps_bundle_instance_au_ps_composition_optional_sections_sections_may_populated.rb +24 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_optional_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_recommended_sections/composition_recommended_sections_recommended_sections_entry_profiles.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_recommended_sections/suite_au_ps_bundle_instance_au_ps_composition_recommended_sections_sections_should_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_recommended_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_subelements_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_resource_type_is_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_subject.rb +28 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_undefined_sections/suite_au_ps_bundle_instance_au_ps_composition_undefined_sections_sections_may_undefined.rb +24 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_undefined_sections.rb +18 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/bundle_validation/suite_au_ps_bundle_instance_bundle_validation_bundle_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/bundle_validation/suite_au_ps_bundle_instance_bundle_validation_bundle_valid_ips.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_bundle_instance/bundle_validation.rb +20 -0
- data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_cs_is_valid_test.rb +21 -0
- data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_cs_supports_au_ps_profiles.rb +40 -0
- data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_cs_supports_ips_recommended_ops.rb +19 -0
- data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_retrieve_cs_group.rb +47 -0
- data/lib/au_ps_inferno/suite/au_ps_v100.rb +39 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_bundle_must_support_conformance/bundle_must_support_conformance_bundle_must_support_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_bundle_must_support_conformance.rb +16 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_attester/composition_attester_attester_party_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_attester/composition_attester_attester_party_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_attester/composition_attester_attester_party_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_attester.rb +26 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_author/composition_author_author_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_author/composition_author_author_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_author/composition_author_author_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_author/composition_author_author_resource_type_is_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_author.rb +28 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_custodian/composition_custodian_custodian_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_custodian/composition_custodian_custodian_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_custodian/composition_custodian_custodian_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_custodian.rb +26 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_mandatory_sections/composition_mandatory_sections_mandatory_sections_entry_profiles.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_mandatory_sections/composition_mandatory_sections_sections_shall_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_mandatory_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_mandatory_ms_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_ms_subelements_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_slices.rb +22 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_must_support_conformance.rb +28 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_optional_sections/composition_optional_sections_optional_sections_entry_profiles.rb +22 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_optional_sections/composition_optional_sections_sections_may_populated.rb +24 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_optional_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_recommended_sections/composition_recommended_sections_recommended_sections_entry_profiles.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_recommended_sections/composition_recommended_sections_sections_should_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_recommended_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_subject/composition_subject_subject_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_subject/composition_subject_subject_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_subject/composition_subject_subject_ms_subelements_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_subject/composition_subject_subject_resource_type_is_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_subject.rb +28 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_undefined_sections/composition_undefined_sections_sections_may_undefined.rb +24 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_undefined_sections.rb +18 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/bundle_validation/suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/bundle_validation/suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid_ips.rb +21 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/bundle_validation.rb +20 -0
- data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/generate_au_ps_using_ips_summary_validation_tests.rb +56 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_bundle_must_support_conformance/bundle_must_support_conformance_bundle_must_support_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_bundle_must_support_conformance.rb +16 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_attester/composition_attester_attester_party_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_attester/composition_attester_attester_party_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_attester/composition_attester_attester_party_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_attester.rb +26 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_author/composition_author_author_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_author/composition_author_author_resource_type_is_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_author/suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author_author_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_author/suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author_author_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_author.rb +28 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_custodian/composition_custodian_custodian_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_custodian/composition_custodian_custodian_ms_subelements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_custodian/suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_custodian_custodian_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_custodian.rb +26 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_mandatory_sections/composition_mandatory_sections_mandatory_sections_entry_profiles.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_mandatory_sections/composition_mandatory_sections_sections_shall_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_mandatory_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_mandatory_ms_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_ms_subelements_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_slices.rb +22 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_must_support_conformance.rb +28 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_optional_sections/composition_optional_sections_optional_sections_entry_profiles.rb +22 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_optional_sections/composition_optional_sections_sections_may_populated.rb +24 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_optional_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_recommended_sections/composition_recommended_sections_recommended_sections_entry_profiles.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_recommended_sections/composition_recommended_sections_sections_should_populated.rb +22 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_recommended_sections.rb +20 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_subject/composition_subject_subject_ms_identifier_slices.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_subject/composition_subject_subject_ms_subelements_populated.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_subject/composition_subject_subject_resource_type_is_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_subject/suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_subject_subject_ms_elements.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_subject.rb +28 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_undefined_sections/composition_undefined_sections_sections_may_undefined.rb +24 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_undefined_sections.rb +18 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/bundle_validation/suite_retrieve_au_ps_bundle_validation_tests_bundle_validation_bundle_valid.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/bundle_validation/suite_retrieve_au_ps_bundle_validation_tests_bundle_validation_bundle_valid_ips.rb +21 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/bundle_validation.rb +20 -0
- data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/retrieve_au_ps_bundle_validation_tests.rb +56 -0
- data/lib/au_ps_inferno/utils/attester/basic_test_attester_identifier_slices.rb +74 -0
- data/lib/au_ps_inferno/utils/attester/basic_test_attester_message_helpers.rb +16 -0
- data/lib/au_ps_inferno/utils/attester/basic_test_attester_module.rb +14 -0
- data/lib/au_ps_inferno/utils/attester/basic_test_attester_resource.rb +54 -0
- data/lib/au_ps_inferno/utils/author/basic_test_author_module.rb +12 -0
- data/lib/au_ps_inferno/utils/author/basic_test_author_resource.rb +32 -0
- data/lib/au_ps_inferno/utils/author/basic_test_author_tests.rb +24 -0
- data/lib/au_ps_inferno/utils/basic_test/bundle_module.rb +87 -0
- data/lib/au_ps_inferno/utils/basic_test/capability_operations_module.rb +37 -0
- data/lib/au_ps_inferno/utils/basic_test/composition_elements_and_slices_module.rb +98 -0
- data/lib/au_ps_inferno/utils/basic_test/composition_section_check_resources_ms_elements_module.rb +197 -0
- data/lib/au_ps_inferno/utils/basic_test/composition_section_read_issues_helpers_module.rb +66 -0
- data/lib/au_ps_inferno/utils/basic_test/composition_section_read_module.rb +127 -0
- data/lib/au_ps_inferno/utils/basic_test/composition_subelements_module.rb +84 -0
- data/lib/au_ps_inferno/utils/basic_test/ms_elements_populated_helpers_module.rb +38 -0
- data/lib/au_ps_inferno/utils/basic_test/ms_elements_populated_module.rb +71 -0
- data/lib/au_ps_inferno/utils/basic_test/ms_identifier_slices_module.rb +61 -0
- data/lib/au_ps_inferno/utils/basic_test/ms_sub_elements_populated_module.rb +128 -0
- data/lib/au_ps_inferno/utils/basic_test/paths_module.rb +26 -0
- data/lib/au_ps_inferno/utils/basic_test/resolve_path_debug_module.rb +45 -0
- data/lib/au_ps_inferno/utils/basic_test/resolve_resource_type_module.rb +52 -0
- data/lib/au_ps_inferno/utils/basic_test/resource_helpers_module.rb +129 -0
- data/lib/au_ps_inferno/utils/basic_test/scratch_bundle_entries_module.rb +30 -0
- data/lib/au_ps_inferno/utils/basic_test/section_bundle_validation_module.rb +70 -0
- data/lib/au_ps_inferno/utils/basic_test_class.rb +56 -0
- data/lib/au_ps_inferno/utils/basic_test_contants_module.rb +32 -0
- data/lib/au_ps_inferno/utils/basic_test_with_url.rb +8 -0
- data/lib/au_ps_inferno/utils/basic_validate_bundle_test.rb +43 -0
- data/lib/au_ps_inferno/utils/bundle_decorator.rb +81 -0
- data/lib/au_ps_inferno/utils/bundle_entry_decorator.rb +19 -0
- data/lib/au_ps_inferno/utils/bundle_is_valid_class.rb +31 -0
- data/lib/au_ps_inferno/utils/capability_statement_decorator.rb +20 -0
- data/lib/au_ps_inferno/utils/composition_decorator.rb +56 -0
- data/lib/au_ps_inferno/utils/composition_utils/boolean_and_stats.rb +28 -0
- data/lib/au_ps_inferno/utils/composition_utils.rb +29 -0
- data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_identifier_slices.rb +47 -0
- data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_module.rb +14 -0
- data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_resource.rb +32 -0
- data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_tests.rb +19 -0
- data/lib/au_ps_inferno/utils/inferno_suite_generator_compat.rb +7 -0
- data/lib/au_ps_inferno/utils/ips_bundle_is_valid_class.rb +15 -0
- data/lib/au_ps_inferno/utils/ips_retrieve_bundle_test_class.rb +17 -0
- data/lib/au_ps_inferno/utils/ips_summary_valid_bundle_class.rb +15 -0
- data/lib/au_ps_inferno/utils/metadata_manager.rb +58 -0
- data/lib/au_ps_inferno/utils/retrieve_bundle_test_class.rb +81 -0
- data/lib/au_ps_inferno/utils/rich_message_class.rb +23 -0
- data/lib/au_ps_inferno/utils/rich_validation_message.rb +42 -0
- data/lib/au_ps_inferno/utils/section_decorator.rb +23 -0
- data/lib/au_ps_inferno/utils/section_names_mapping.rb +31 -0
- data/lib/au_ps_inferno/utils/section_test_class.rb +18 -0
- data/lib/au_ps_inferno/utils/section_test_module.rb +16 -0
- data/lib/au_ps_inferno/utils/structure_definition_decorator.rb +28 -0
- data/lib/au_ps_inferno/utils/subject/basic_test_subject_module.rb +12 -0
- data/lib/au_ps_inferno/utils/subject/basic_test_subject_patient_ms_other_tests.rb +15 -0
- data/lib/au_ps_inferno/utils/subject/basic_test_subject_resource.rb +21 -0
- data/lib/au_ps_inferno/utils/summary_valid_bundle_class.rb +84 -0
- data/lib/au_ps_inferno/utils/validator_helpers.rb +92 -0
- data/lib/au_ps_inferno/version.rb +6 -0
- data/lib/au_ps_inferno.rb +3 -0
- metadata +310 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for AU PS Composition Mandatory Sections capable of populating referenced profiles
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMandatorySectionsAuPsCompositionMandatorySectionsCapableOfPopulatingReferencedProfiles < BasicTest
|
|
9
|
+
title 'AU PS Composition Mandatory Sections capable of populating referenced profiles'
|
|
10
|
+
description 'Mandatory section SHALL be capable of populating section.entry with the referenced profiles and SHOULD correctly populate section.entry if a value is known.'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections_mandatory_sections_entry_profiles
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
test_composition_mandatory_sections
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for AU PS Composition Mandatory Sections are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMandatorySectionsAuPsCompositionMandatorySectionsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'AU PS Composition Mandatory Sections are correctly populated'
|
|
10
|
+
description 'Mandatory section SHALL be correctly populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections_sections_shall_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_sections_in_bundle(%w[11450-4 48765-2 10160-0], %w[title code text])
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_mandatory_sections/suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections_sections_shall_populated'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_mandatory_sections/composition_mandatory_sections_mandatory_sections_entry_profiles'
|
|
6
|
+
|
|
7
|
+
module AUPSTestKit
|
|
8
|
+
# Automatically generated primitive group for AU PS Composition Mandatory Sections
|
|
9
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMandatorySections < Inferno::TestGroup
|
|
10
|
+
title 'AU PS Composition Mandatory Sections'
|
|
11
|
+
description 'Verify the mandatory sections are correctly populated in the AU PS Composition resource'
|
|
12
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections
|
|
13
|
+
|
|
14
|
+
run_as_group
|
|
15
|
+
|
|
16
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections_sections_shall_populated
|
|
17
|
+
|
|
18
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_mandatory_sections_mandatory_sections_entry_profiles
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Mandatory Must Support elements are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMustSupportConformanceMandatoryMustSupportElementsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'Mandatory Must Support elements are correctly populated'
|
|
10
|
+
description 'Mandatory Must Support element SHALL be able to be populated if a value is known and allowed to share.'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_mandatory_ms_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_elements_in_composition(%w[author date status subject title type])
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Must Support sub-elements of a complex element are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMustSupportConformanceMustSupportSubelementsOfAComplexElementAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'Must Support sub-elements of a complex element are correctly populated'
|
|
10
|
+
description 'Must Support sub-elements of a complex element SHALL be correctly populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_ms_subelements_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_sub_elements_in_composition(['attester.mode', 'subject.reference'],
|
|
19
|
+
['attester.party', 'attester.time'])
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Optional Must Support elements are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMustSupportConformanceOptionalMustSupportElementsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'Optional Must Support elements are correctly populated'
|
|
10
|
+
description 'Optional Must Support elements SHALL be correctly populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_optional_ms_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_elements_in_composition(%w[attester custodian identifier text event],
|
|
19
|
+
required: false)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Must Support slices are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMustSupportConformanceMustSupportSlicesAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'Must Support slices are correctly populated'
|
|
10
|
+
description 'Must Support slice careProvisioningEvent SHALL be populated if a value is known.'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_optional_ms_slices
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_slices_in_composition([{ path: 'event', sliceName: 'careProvisioningEvent', min: 0,
|
|
19
|
+
max: '1', mustSupport: true, mandatory_ms_sub_elements: ['period'], optional_ms_sub_elements: ['code'] }])
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance.rb
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_mandatory_ms_populated'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_populated'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_ms_subelements_populated'
|
|
8
|
+
|
|
9
|
+
require_relative 'au_ps_composition_must_support_conformance/composition_must_support_conformance_composition_optional_ms_slices'
|
|
10
|
+
|
|
11
|
+
module AUPSTestKit
|
|
12
|
+
# Automatically generated primitive group for AU PS Composition Must Support Conformance
|
|
13
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionMustSupportConformance < Inferno::TestGroup
|
|
14
|
+
title 'AU PS Composition Must Support Conformance'
|
|
15
|
+
description 'Verifies that Composition Must Support elements (mandatory, optional, sub-elements, slices) are correctly populated when data is known.'
|
|
16
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance
|
|
17
|
+
|
|
18
|
+
run_as_group
|
|
19
|
+
|
|
20
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_mandatory_ms_populated
|
|
21
|
+
|
|
22
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_optional_ms_populated
|
|
23
|
+
|
|
24
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_ms_subelements_populated
|
|
25
|
+
|
|
26
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_must_support_conformance_composition_optional_ms_slices
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for AU PS Composition Optional Sections capable of populating referenced profiles
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionOptionalSectionsAuPsCompositionOptionalSectionsCapableOfPopulatingReferencedProfiles < BasicTest
|
|
9
|
+
title 'AU PS Composition Optional Sections capable of populating referenced profiles'
|
|
10
|
+
description 'Optional section SHALL be capable of populating section.entry with the referenced profiles and SHOULD correctly populate section.entry if a value is known.'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_optional_sections_optional_sections_entry_profiles
|
|
12
|
+
optional
|
|
13
|
+
|
|
14
|
+
def metadata_manager
|
|
15
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
run do
|
|
19
|
+
test_composition_optional_sections
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for AU PS Composition optional sections are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionOptionalSectionsAuPsCompositionOptionalSectionsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'AU PS Composition optional sections are correctly populated'
|
|
10
|
+
description 'Optional section MAY be correctly populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_optional_sections_sections_may_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_sections_in_bundle(
|
|
19
|
+
%w[42348-3 104605-1 47420-5 11348-0 10162-6 81338-6 18776-5 29762-2
|
|
20
|
+
8716-3], %w[title code text], optional: true
|
|
21
|
+
)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_optional_sections/suite_au_ps_bundle_instance_au_ps_composition_optional_sections_sections_may_populated'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_optional_sections/suite_au_ps_bundle_instance_au_ps_composition_optional_sections_optional_sections_entry_profiles'
|
|
6
|
+
|
|
7
|
+
module AUPSTestKit
|
|
8
|
+
# Automatically generated primitive group for AU PS Composition Optional Sections
|
|
9
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionOptionalSections < Inferno::TestGroup
|
|
10
|
+
title 'AU PS Composition Optional Sections'
|
|
11
|
+
description 'Verify the optional sections are correctly populated in the AU PS Composition resource'
|
|
12
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_optional_sections
|
|
13
|
+
|
|
14
|
+
run_as_group
|
|
15
|
+
|
|
16
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_optional_sections_sections_may_populated
|
|
17
|
+
|
|
18
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_optional_sections_optional_sections_entry_profiles
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for AU PS Composition Recommended Sections capable of populating referenced profiles
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionRecommendedSectionsAuPsCompositionRecommendedSectionsCapableOfPopulatingReferencedProfiles < BasicTest
|
|
9
|
+
title 'AU PS Composition Recommended Sections capable of populating referenced profiles'
|
|
10
|
+
description 'Recommended section SHALL be capable of populating section.entry with the referenced profiles and SHOULD correctly populate section.entry if a value is known.'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_recommended_sections_recommended_sections_entry_profiles
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
test_composition_recommended_sections
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for AU PS Composition recommended sections are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionRecommendedSectionsAuPsCompositionRecommendedSectionsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'AU PS Composition recommended sections are correctly populated'
|
|
10
|
+
description 'Recommended sections SHOULD be correctly populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_recommended_sections_sections_should_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_sections_in_bundle(%w[11369-6 30954-2 47519-4 46264-8], %w[title code text],
|
|
19
|
+
optional: true)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_recommended_sections/suite_au_ps_bundle_instance_au_ps_composition_recommended_sections_sections_should_populated'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_recommended_sections/composition_recommended_sections_recommended_sections_entry_profiles'
|
|
6
|
+
|
|
7
|
+
module AUPSTestKit
|
|
8
|
+
# Automatically generated primitive group for AU PS Composition Recommended Sections
|
|
9
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionRecommendedSections < Inferno::TestGroup
|
|
10
|
+
title 'AU PS Composition Recommended Sections'
|
|
11
|
+
description 'Verify the recommended sections are correctly populated in the Composition resource'
|
|
12
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_recommended_sections
|
|
13
|
+
|
|
14
|
+
run_as_group
|
|
15
|
+
|
|
16
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_recommended_sections_sections_should_populated
|
|
17
|
+
|
|
18
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_recommended_sections_recommended_sections_entry_profiles
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Must Support elements SHALL be populated if a value is known
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionSubjectMustSupportElementsShallBePopulatedIfAValueIsKnown < BasicTest
|
|
9
|
+
title 'Must Support elements SHALL be populated if a value is known'
|
|
10
|
+
description 'Must Support elements SHALL be populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_elements
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
ms_elements_populated_message('subject')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Must Support identifier slices SHALL be populated if a value is known
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionSubjectMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < BasicTest
|
|
9
|
+
title 'Must Support identifier slices SHALL be populated if a value is known'
|
|
10
|
+
description 'Must Support identifier slices SHALL be populated if a value is known (i.e. ihi, dva, medicare).'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_identifier_slices
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
test_subject_ms_identifier_slices
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Must Support sub-element SHALL be populated if a value is known and the parent is populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionSubjectMustSupportSubelementShallBePopulatedIfAValueIsKnownAndTheParentIsPopulated < BasicTest
|
|
9
|
+
title 'Must Support sub-element SHALL be populated if a value is known and the parent is populated'
|
|
10
|
+
description 'Must Support sub-element SHALL be populated if a value is known and the parent is populated'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_subelements_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
ms_sub_elements_populated_message('subject')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Subject reference in the AU PS Composition SHALL resolve to a valid resource type (Patient).
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionSubjectSubjectReferenceInTheAuPsCompositionShallResolveToAValidResourceTypePatient < BasicTest
|
|
9
|
+
title 'Subject reference in the AU PS Composition SHALL resolve to a valid resource type (Patient).'
|
|
10
|
+
description 'Subject reference in the AU PS Composition SHALL resolve to a valid resource type (Patient).'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_resource_type_is_valid
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
test_resource_type_is_valid?('subject')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_resource_type_is_valid'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_elements'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_subelements_populated'
|
|
8
|
+
|
|
9
|
+
require_relative 'au_ps_composition_subject/suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_identifier_slices'
|
|
10
|
+
|
|
11
|
+
module AUPSTestKit
|
|
12
|
+
# Automatically generated primitive group for AU PS Composition Subject
|
|
13
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionSubject < Inferno::TestGroup
|
|
14
|
+
title 'AU PS Composition Subject'
|
|
15
|
+
description 'Verify the referenced subject is a correctly populated AU PS Patient resource.'
|
|
16
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_subject
|
|
17
|
+
|
|
18
|
+
run_as_group
|
|
19
|
+
|
|
20
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_resource_type_is_valid
|
|
21
|
+
|
|
22
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_elements
|
|
23
|
+
|
|
24
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_subelements_populated
|
|
25
|
+
|
|
26
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_subject_subject_ms_identifier_slices
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Automatically generated primitive test for Undefined sections are correctly populated
|
|
8
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionUndefinedSectionsUndefinedSectionsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'Undefined sections are correctly populated'
|
|
10
|
+
description 'Undefined sections MAY be populated if a value is known'
|
|
11
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_undefined_sections_sections_may_undefined
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
validate_populated_undefined_sections_in_bundle(
|
|
19
|
+
%w[11450-4 48765-2 10160-0 11369-6 30954-2 47519-4 46264-8 42348-3 104605-1 47420-5
|
|
20
|
+
11348-0 10162-6 81338-6 18776-5 29762-2 8716-3], %w[title code text]
|
|
21
|
+
)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_undefined_sections/suite_au_ps_bundle_instance_au_ps_composition_undefined_sections_sections_may_undefined'
|
|
4
|
+
|
|
5
|
+
module AUPSTestKit
|
|
6
|
+
# Automatically generated primitive group for AU PS Composition Undefined Sections
|
|
7
|
+
class AUPSSuiteAuPsBundleInstanceAuPsCompositionUndefinedSections < Inferno::TestGroup
|
|
8
|
+
title 'AU PS Composition Undefined Sections'
|
|
9
|
+
description 'Verify the undefined sections are correctly populated in the AU PS Composition resource.'
|
|
10
|
+
id :suite_au_ps_bundle_instance_au_ps_composition_undefined_sections
|
|
11
|
+
|
|
12
|
+
optional
|
|
13
|
+
|
|
14
|
+
run_as_group
|
|
15
|
+
|
|
16
|
+
test from: :suite_au_ps_bundle_instance_au_ps_composition_undefined_sections_sections_may_undefined
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
require_relative '../../../utils/bundle_is_valid_class'
|
|
7
|
+
|
|
8
|
+
require_relative '../../../utils/ips_bundle_is_valid_class'
|
|
9
|
+
|
|
10
|
+
module AUPSTestKit
|
|
11
|
+
# Automatically generated primitive test for Bundle is valid against AU PS Bundle
|
|
12
|
+
class AUPSSuiteAuPsBundleInstanceBundleValidationBundleIsValidAgainstAuPsBundle < BundleIsValidClass
|
|
13
|
+
title 'Bundle is valid against AU PS Bundle'
|
|
14
|
+
description 'The Bundle resource is valid against the AU PS Bundle profile using FHIR validator'
|
|
15
|
+
id :suite_au_ps_bundle_instance_bundle_validation_bundle_valid
|
|
16
|
+
|
|
17
|
+
def metadata_manager
|
|
18
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../../utils/metadata_manager'
|
|
5
|
+
|
|
6
|
+
require_relative '../../../utils/bundle_is_valid_class'
|
|
7
|
+
|
|
8
|
+
require_relative '../../../utils/ips_bundle_is_valid_class'
|
|
9
|
+
|
|
10
|
+
module AUPSTestKit
|
|
11
|
+
# Automatically generated primitive test for Bundle is valid against IPS Bundle
|
|
12
|
+
class AUPSSuiteAuPsBundleInstanceBundleValidationBundleIsValidAgainstIpsBundle < IpsBundleIsValidClass
|
|
13
|
+
title 'Bundle is valid against IPS Bundle'
|
|
14
|
+
description 'The Bundle resource is valid against the IPS Bundle profile using FHIR validator'
|
|
15
|
+
id :suite_au_ps_bundle_instance_bundle_validation_bundle_valid_ips
|
|
16
|
+
|
|
17
|
+
def metadata_manager
|
|
18
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'bundle_validation/suite_au_ps_bundle_instance_bundle_validation_bundle_valid'
|
|
4
|
+
|
|
5
|
+
require_relative 'bundle_validation/suite_au_ps_bundle_instance_bundle_validation_bundle_valid_ips'
|
|
6
|
+
|
|
7
|
+
module AUPSTestKit
|
|
8
|
+
# Automatically generated primitive group for Bundle Validation
|
|
9
|
+
class AUPSSuiteAuPsBundleInstanceBundleValidation < Inferno::TestGroup
|
|
10
|
+
title 'Bundle Validation'
|
|
11
|
+
description 'Validates that the bundle conforms to the Bundle profiles.'
|
|
12
|
+
id :suite_au_ps_bundle_instance_bundle_validation
|
|
13
|
+
|
|
14
|
+
run_as_group
|
|
15
|
+
|
|
16
|
+
test from: :suite_au_ps_bundle_instance_bundle_validation_bundle_valid
|
|
17
|
+
|
|
18
|
+
test from: :suite_au_ps_bundle_instance_bundle_validation_bundle_valid_ips
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../utils/basic_test_with_url'
|
|
4
|
+
|
|
5
|
+
module AUPSTestKit
|
|
6
|
+
# Verify CapabilityStatement resource is valid
|
|
7
|
+
class AUPSCSIsValid100preview < BasicTestWithURL
|
|
8
|
+
title 'CapabilityStatement is valid'
|
|
9
|
+
description 'Verifies that the server returns a valid CapabilityStatement resource.'
|
|
10
|
+
id :au_ps_cs_is_valid_100preview
|
|
11
|
+
|
|
12
|
+
run do
|
|
13
|
+
skip_if url.blank?, 'No FHIR server specified'
|
|
14
|
+
fhir_get_capability_statement
|
|
15
|
+
scratch[:capability_statement] = resource
|
|
16
|
+
info "Capability Statement saved to scratch: #{scratch[:capability_statement]}"
|
|
17
|
+
assert_response_status(200)
|
|
18
|
+
assert_resource_type(:capability_statement)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../utils/basic_test_class'
|
|
4
|
+
require_relative '../../utils/capability_statement_decorator'
|
|
5
|
+
|
|
6
|
+
module AUPSTestKit
|
|
7
|
+
# Verifies that the CapabilityStatement declares support for the required AU PS profiles.
|
|
8
|
+
class AUPSCSSupportsAUPSProfiles100preview < BasicTest
|
|
9
|
+
title 'CapabilityStatement supports AU PS Profiles'
|
|
10
|
+
description 'Verifies that the CapabilityStatement declares support for the required AU PS profiles.'
|
|
11
|
+
id :au_ps_cs_supports_au_ps_profiles_100preview
|
|
12
|
+
|
|
13
|
+
def check_profiles_status(profiles_mapping, general_message)
|
|
14
|
+
au_ps_profiles_status_array = profiles_mapping.keys.map do |profile_url|
|
|
15
|
+
"#{profiles_mapping[profile_url]} (#{profile_url}): #{cs_profiles.include?(profile_url) ? 'Yes' : 'No'}"
|
|
16
|
+
end.join("\n\n")
|
|
17
|
+
info "**#{general_message}**:\n\n#{au_ps_profiles_status_array}"
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def cs_profiles
|
|
21
|
+
cs_resource = CapabilityStatementDecorator.new(scratch[:capability_statement].to_hash)
|
|
22
|
+
cs_resource.all_profiles
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
run do
|
|
26
|
+
skip_if scratch[:capability_statement].blank?, 'No CapabilityStatement resource provided'
|
|
27
|
+
check_profiles_status(
|
|
28
|
+
{ 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-allergyintolerance' => 'AUPSAllergyIntolerance',
|
|
29
|
+
'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-bundle' => 'AUPSBundle', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-composition' => 'AUPSComposition', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-condition' => 'AUPSCondition', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-medicationrequest' => 'AUPSMedicationRequest', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-medicationstatement' => 'AUPSMedicationStatement', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-patient' => 'AUPSPatient' },
|
|
30
|
+
'For each of the following AU PS profiles indicate if it is referenced as a supported profile'
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
check_profiles_status(
|
|
34
|
+
{ 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-diagnosticresult-path' => 'AUPSPathologyResult',
|
|
35
|
+
'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-encounter' => 'AUPSEncounter', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-immunization' => 'AUPSImmunization', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-medication' => 'AUPSMedication', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-organization' => 'AUPSOrganization', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-practitioner' => 'AUPSPractitioner', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-practitionerrole' => 'AUPSPractitionerRole', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-procedure' => 'AUPSProcedure', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-relatedperson' => 'AUPSRelatedPerson', 'http://hl7.org.au/fhir/ps/StructureDefinition/au-ps-smokingstatus' => 'AUPSSmokingStatus' },
|
|
36
|
+
'List any other AU PS profiles referenced as supported profile'
|
|
37
|
+
)
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|