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,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../../utils/basic_test_class'
|
|
4
|
+
|
|
5
|
+
module AUPSTestKit
|
|
6
|
+
# Verifies that the CapabilityStatement declares support for IPS recommended operations.
|
|
7
|
+
class AUPSCSSupportsIPSRecommendedOPS100preview < BasicTest
|
|
8
|
+
title 'CapabilityStatement supports IPS Recommended Operations'
|
|
9
|
+
description 'Verifies that the CapabilityStatement declares support for IPS recommended operations (e.g. $summary, $docref).'
|
|
10
|
+
id :au_ps_cs_supports_ips_recommended_ops_100preview
|
|
11
|
+
|
|
12
|
+
run do
|
|
13
|
+
skip_if url.blank?, 'No FHIR server URL provided'
|
|
14
|
+
summary_op_defined?
|
|
15
|
+
operation_defined?(operations, 'http://hl7.org/fhir/uv/ipa/OperationDefinition/docref', %w[docref],
|
|
16
|
+
:docref_op_defined)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_cs_is_valid_test'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_cs_supports_ips_recommended_ops'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_cs_supports_au_ps_profiles'
|
|
8
|
+
|
|
9
|
+
module AUPSTestKit
|
|
10
|
+
# Tests for CapabilityStatement resource
|
|
11
|
+
class AUPSRetrieveCSGroup100preview < Inferno::TestGroup
|
|
12
|
+
title 'Retrieve Capability Statement'
|
|
13
|
+
description 'Verifies that the server exposes a valid CapabilityStatement and declares support for AU PS profiles and IPS recommended operations.'
|
|
14
|
+
id :au_ps_retrieve_cs_group_100preview
|
|
15
|
+
|
|
16
|
+
input :url,
|
|
17
|
+
title: 'FHIR Server Base Url',
|
|
18
|
+
optional: true
|
|
19
|
+
|
|
20
|
+
input :credentials,
|
|
21
|
+
title: 'OAuth Credentials',
|
|
22
|
+
type: :oauth_credentials,
|
|
23
|
+
optional: true
|
|
24
|
+
|
|
25
|
+
input :header_name,
|
|
26
|
+
title: 'Header name',
|
|
27
|
+
optional: true
|
|
28
|
+
|
|
29
|
+
input :header_value,
|
|
30
|
+
title: 'Header value',
|
|
31
|
+
optional: true
|
|
32
|
+
|
|
33
|
+
fhir_client do
|
|
34
|
+
url :url
|
|
35
|
+
oauth_credentials :credentials
|
|
36
|
+
headers(header_name.present? && header_value.present? ? { header_name => header_value } : {})
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
run_as_group
|
|
40
|
+
|
|
41
|
+
test from: :au_ps_cs_is_valid_100preview
|
|
42
|
+
|
|
43
|
+
test from: :au_ps_cs_supports_ips_recommended_ops_100preview
|
|
44
|
+
|
|
45
|
+
test from: :au_ps_cs_supports_au_ps_profiles_100preview
|
|
46
|
+
end
|
|
47
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative '../version'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_bundle_instance/au_ps_bundle_instance'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_retrieve_cs_group/au_ps_retrieve_cs_group'
|
|
8
|
+
|
|
9
|
+
require_relative 'retrieve_au_ps_bundle_validation_tests/retrieve_au_ps_bundle_validation_tests'
|
|
10
|
+
|
|
11
|
+
require_relative 'generate_au_ps_using_ips_summary_validation_tests/generate_au_ps_using_ips_summary_validation_tests'
|
|
12
|
+
|
|
13
|
+
module AUPSTestKit
|
|
14
|
+
# Test suite for the AU PS (Australian Primary Care and Shared Health) Implementation Guide.
|
|
15
|
+
class AUPSSuitePreview < Inferno::TestSuite
|
|
16
|
+
id :au_ps_v100
|
|
17
|
+
title "AU PS #{AUPSTestKit::IG_VERSION} Test Suite"
|
|
18
|
+
description 'Validates AU PS (Australian Primary Care and Shared Health) bundles, ' \
|
|
19
|
+
'compositions, sections, and server CapabilityStatement support for the ' \
|
|
20
|
+
"#{AUPSTestKit::IG_VERSION} implementation guide."
|
|
21
|
+
|
|
22
|
+
fhir_resource_validator do
|
|
23
|
+
igs "hl7.fhir.au.ps##{AUPSTestKit::IG_VERSION}"
|
|
24
|
+
|
|
25
|
+
cli_context do
|
|
26
|
+
txServer ENV.fetch('TX_SERVER_URL', 'https://tx.dev.hl7.org.au/fhir')
|
|
27
|
+
noEcosystem true
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
group from: :suite_au_ps_bundle_instance
|
|
32
|
+
|
|
33
|
+
group from: :au_ps_retrieve_cs_group_100preview
|
|
34
|
+
|
|
35
|
+
group from: :suite_retrieve_au_ps_bundle_validation_tests
|
|
36
|
+
|
|
37
|
+
group from: :suite_generate_au_ps_using_ips_summary_validation_tests
|
|
38
|
+
end
|
|
39
|
+
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 Bundle Must Support elements are correctly populated
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsBundleMustSupportConformanceAuPsBundleMustSupportElementsAreCorrectlyPopulated < BasicTest
|
|
9
|
+
title 'AU PS Bundle Must Support elements are correctly populated'
|
|
10
|
+
description 'Must Support elements SHALL be populated when an element value is known and allowed to share.'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_bundle_must_support_conformance_bundle_must_support_populated
|
|
12
|
+
|
|
13
|
+
def metadata_manager
|
|
14
|
+
@metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
run do
|
|
18
|
+
bundle_mandatory_ms_elements_info
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_bundle_must_support_conformance/bundle_must_support_conformance_bundle_must_support_populated'
|
|
4
|
+
|
|
5
|
+
module AUPSTestKit
|
|
6
|
+
# Automatically generated primitive group for AU PS Bundle Must Support Conformance
|
|
7
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsBundleMustSupportConformance < Inferno::TestGroup
|
|
8
|
+
title 'AU PS Bundle Must Support Conformance'
|
|
9
|
+
description 'Verifies that Must Support elements at the bundle level are populated when data is available.'
|
|
10
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_bundle_must_support_conformance
|
|
11
|
+
|
|
12
|
+
run_as_group
|
|
13
|
+
|
|
14
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_bundle_must_support_conformance_bundle_must_support_populated
|
|
15
|
+
end
|
|
16
|
+
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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAttesterMustSupportElementsShallBePopulatedIfAValueIsKnown < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester_attester_party_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('attester')
|
|
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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAttesterMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester_attester_party_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_composition_attester_party_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
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAttesterMustSupportSubelementShallBePopulatedIfAValueIsKnown < BasicTest
|
|
9
|
+
title 'Must Support sub-element SHALL be populated if a value is known'
|
|
10
|
+
description 'Must Support sub-element SHALL be populated if a value is known'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester_attester_party_ms_subelements
|
|
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('attester')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_attester/composition_attester_attester_party_ms_elements'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_attester/composition_attester_attester_party_ms_subelements'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_composition_attester/composition_attester_attester_party_ms_identifier_slices'
|
|
8
|
+
|
|
9
|
+
module AUPSTestKit
|
|
10
|
+
# Automatically generated primitive group for AU PS Composition Attester
|
|
11
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAttester < Inferno::TestGroup
|
|
12
|
+
title 'AU PS Composition Attester'
|
|
13
|
+
description 'Verify the referenced attester.party is a correctly populated AU PS Patient, RelatedPerson, Practitioner, PractitionerRole, or Organization resource.'
|
|
14
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester
|
|
15
|
+
|
|
16
|
+
optional
|
|
17
|
+
|
|
18
|
+
run_as_group
|
|
19
|
+
|
|
20
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester_attester_party_ms_elements
|
|
21
|
+
|
|
22
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester_attester_party_ms_subelements
|
|
23
|
+
|
|
24
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester_attester_party_ms_identifier_slices
|
|
25
|
+
end
|
|
26
|
+
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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAuthorMustSupportElementsShallBePopulatedIfAValueIsKnown < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_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('author')
|
|
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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAuthorMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_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_composition_author_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-elements SHALL be populated if a value is known
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAuthorMustSupportSubelementsShallBePopulatedIfAValueIsKnown < BasicTest
|
|
9
|
+
title 'Must Support sub-elements SHALL be populated if a value is known'
|
|
10
|
+
description 'Must Support sub-elements SHALL be populated if a value is known'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_ms_subelements
|
|
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('author')
|
|
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 Author reference in the AU PS Composition SHALL resolve to a valid resource type (Practitioner, PractitionerRole, Device, Patient, RelatedPerson, Organization).
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAuthorAuthorReferenceInTheAuPsCompositionShallResolveToAValidResourceTypePractitionerPractitionerroleDevicePatientRelatedpersonOrganization < BasicTest
|
|
9
|
+
title 'Author reference in the AU PS Composition SHALL resolve to a valid resource type (Practitioner, PractitionerRole, Device, Patient, RelatedPerson, Organization).'
|
|
10
|
+
description 'Author reference in the AU PS Composition SHALL resolve to a valid resource type (Practitioner, PractitionerRole, Device, Patient, RelatedPerson, Organization).'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_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?('author')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_author/composition_author_author_resource_type_is_valid'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_author/composition_author_author_ms_elements'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_composition_author/composition_author_author_ms_subelements'
|
|
8
|
+
|
|
9
|
+
require_relative 'au_ps_composition_author/composition_author_author_ms_identifier_slices'
|
|
10
|
+
|
|
11
|
+
module AUPSTestKit
|
|
12
|
+
# Automatically generated primitive group for AU PS Composition Author
|
|
13
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionAuthor < Inferno::TestGroup
|
|
14
|
+
title 'AU PS Composition Author'
|
|
15
|
+
description 'Verify the referenced author is a correctly populated AU PS Practitioner, AU PS PractitionerRole, AU PS Patient, AU PS RelatedPerson, AU PS Organization profiles or Device resource.'
|
|
16
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author
|
|
17
|
+
|
|
18
|
+
run_as_group
|
|
19
|
+
|
|
20
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_resource_type_is_valid
|
|
21
|
+
|
|
22
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_ms_elements
|
|
23
|
+
|
|
24
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_ms_subelements
|
|
25
|
+
|
|
26
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author_author_ms_identifier_slices
|
|
27
|
+
end
|
|
28
|
+
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 element SHALL be populated if a value is known
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionCustodianMustSupportElementShallBePopulatedIfAValueIsKnown < BasicTest
|
|
9
|
+
title 'Must Support element SHALL be populated if a value is known'
|
|
10
|
+
description 'Must Support element SHALL be populated if a value is known'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian_custodian_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('custodian')
|
|
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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionCustodianMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian_custodian_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_composition_custodian_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
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionCustodianMustSupportSubelementShallBePopulatedIfAValueIsKnown < BasicTest
|
|
9
|
+
title 'Must Support sub-element SHALL be populated if a value is known'
|
|
10
|
+
description 'Must Support sub-element SHALL be populated if a value is known'
|
|
11
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian_custodian_ms_subelements
|
|
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('custodian')
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'au_ps_composition_custodian/composition_custodian_custodian_ms_elements'
|
|
4
|
+
|
|
5
|
+
require_relative 'au_ps_composition_custodian/composition_custodian_custodian_ms_subelements'
|
|
6
|
+
|
|
7
|
+
require_relative 'au_ps_composition_custodian/composition_custodian_custodian_ms_identifier_slices'
|
|
8
|
+
|
|
9
|
+
module AUPSTestKit
|
|
10
|
+
# Automatically generated primitive group for AU PS Composition Custodian
|
|
11
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionCustodian < Inferno::TestGroup
|
|
12
|
+
title 'AU PS Composition Custodian'
|
|
13
|
+
description 'Verify the referenced custodian is a correctly populated AU PS Organization resource.'
|
|
14
|
+
id :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian
|
|
15
|
+
|
|
16
|
+
optional
|
|
17
|
+
|
|
18
|
+
run_as_group
|
|
19
|
+
|
|
20
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian_custodian_ms_elements
|
|
21
|
+
|
|
22
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian_custodian_ms_subelements
|
|
23
|
+
|
|
24
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian_custodian_ms_identifier_slices
|
|
25
|
+
end
|
|
26
|
+
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 capable of populating referenced profiles
|
|
8
|
+
class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMandatorySectionsAuPsCompositionMandatorySectionsCapableOfPopulatingReferencedProfiles < 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_generate_au_ps_using_ips_summary_validation_tests_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMandatorySectionsAuPsCompositionMandatorySectionsAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_validation_tests_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/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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMandatorySections < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_mandatory_sections
|
|
13
|
+
|
|
14
|
+
run_as_group
|
|
15
|
+
|
|
16
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_mandatory_sections_sections_shall_populated
|
|
17
|
+
|
|
18
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMustSupportConformanceMandatoryMustSupportElementsAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_validation_tests_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMustSupportConformanceMustSupportSubelementsOfAComplexElementAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_validation_tests_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMustSupportConformanceOptionalMustSupportElementsAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_validation_tests_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMustSupportConformanceMustSupportSlicesAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_validation_tests_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
|
|
@@ -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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionMustSupportConformance < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_must_support_conformance
|
|
17
|
+
|
|
18
|
+
run_as_group
|
|
19
|
+
|
|
20
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_must_support_conformance_composition_mandatory_ms_populated
|
|
21
|
+
|
|
22
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_must_support_conformance_composition_optional_ms_populated
|
|
23
|
+
|
|
24
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_must_support_conformance_composition_ms_subelements_populated
|
|
25
|
+
|
|
26
|
+
test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_must_support_conformance_composition_optional_ms_slices
|
|
27
|
+
end
|
|
28
|
+
end
|