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.
Files changed (195) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +201 -0
  3. data/lib/au_ps_inferno/generator/constants.rb +61 -0
  4. data/lib/au_ps_inferno/generator/generator.rb +76 -0
  5. data/lib/au_ps_inferno/generator/generator_group_based_metadata_module.rb +113 -0
  6. data/lib/au_ps_inferno/generator/ig_resources_extractor.rb +149 -0
  7. data/lib/au_ps_inferno/generator/metadata_manager.rb +608 -0
  8. data/lib/au_ps_inferno/generator/naming.rb +52 -0
  9. data/lib/au_ps_inferno/generator/sections_validation_group_generator.rb +182 -0
  10. data/lib/au_ps_inferno/generator/test_file_generator.rb +77 -0
  11. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_bundle_instance.rb +56 -0
  12. 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
  13. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_bundle_must_support_conformance.rb +16 -0
  14. 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
  15. 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
  16. 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
  17. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_attester.rb +26 -0
  18. 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
  19. 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
  20. 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
  21. 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
  22. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_author.rb +28 -0
  23. 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
  24. 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
  25. 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
  26. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_custodian.rb +26 -0
  27. 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
  28. 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
  29. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_mandatory_sections.rb +20 -0
  30. 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
  31. 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
  32. 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
  33. 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
  34. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_must_support_conformance.rb +28 -0
  35. 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
  36. 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
  37. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_optional_sections.rb +20 -0
  38. 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
  39. 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
  40. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_recommended_sections.rb +20 -0
  41. 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
  42. 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
  43. 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
  44. 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
  45. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_subject.rb +28 -0
  46. 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
  47. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/au_ps_composition_undefined_sections.rb +18 -0
  48. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/bundle_validation/suite_au_ps_bundle_instance_bundle_validation_bundle_valid.rb +21 -0
  49. 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
  50. data/lib/au_ps_inferno/suite/au_ps_bundle_instance/bundle_validation.rb +20 -0
  51. data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_cs_is_valid_test.rb +21 -0
  52. data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_cs_supports_au_ps_profiles.rb +40 -0
  53. data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_cs_supports_ips_recommended_ops.rb +19 -0
  54. data/lib/au_ps_inferno/suite/au_ps_retrieve_cs_group/au_ps_retrieve_cs_group.rb +47 -0
  55. data/lib/au_ps_inferno/suite/au_ps_v100.rb +39 -0
  56. 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
  57. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_bundle_must_support_conformance.rb +16 -0
  58. 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
  59. 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
  60. 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
  61. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_attester.rb +26 -0
  62. 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
  63. 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
  64. 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
  65. 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
  66. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_author.rb +28 -0
  67. 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
  68. 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
  69. 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
  70. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_custodian.rb +26 -0
  71. 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
  72. 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
  73. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_mandatory_sections.rb +20 -0
  74. 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
  75. 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
  76. 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
  77. 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
  78. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_must_support_conformance.rb +28 -0
  79. 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
  80. 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
  81. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_optional_sections.rb +20 -0
  82. 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
  83. 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
  84. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_recommended_sections.rb +20 -0
  85. 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
  86. 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
  87. 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
  88. 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
  89. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_subject.rb +28 -0
  90. 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
  91. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/au_ps_composition_undefined_sections.rb +18 -0
  92. 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
  93. 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
  94. data/lib/au_ps_inferno/suite/generate_au_ps_using_ips_summary_validation_tests/bundle_validation.rb +20 -0
  95. 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
  96. 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
  97. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_bundle_must_support_conformance.rb +16 -0
  98. 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
  99. 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
  100. 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
  101. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_attester.rb +26 -0
  102. 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
  103. 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
  104. 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
  105. 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
  106. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_author.rb +28 -0
  107. 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
  108. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_custodian/composition_custodian_custodian_ms_subelements.rb +21 -0
  109. 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
  110. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_custodian.rb +26 -0
  111. 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
  112. 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
  113. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_mandatory_sections.rb +20 -0
  114. 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
  115. 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
  116. 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
  117. 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
  118. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_must_support_conformance.rb +28 -0
  119. 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
  120. 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
  121. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_optional_sections.rb +20 -0
  122. 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
  123. 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
  124. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_recommended_sections.rb +20 -0
  125. 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
  126. 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
  127. 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
  128. 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
  129. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_subject.rb +28 -0
  130. 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
  131. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/au_ps_composition_undefined_sections.rb +18 -0
  132. 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
  133. 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
  134. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/bundle_validation.rb +20 -0
  135. data/lib/au_ps_inferno/suite/retrieve_au_ps_bundle_validation_tests/retrieve_au_ps_bundle_validation_tests.rb +56 -0
  136. data/lib/au_ps_inferno/utils/attester/basic_test_attester_identifier_slices.rb +74 -0
  137. data/lib/au_ps_inferno/utils/attester/basic_test_attester_message_helpers.rb +16 -0
  138. data/lib/au_ps_inferno/utils/attester/basic_test_attester_module.rb +14 -0
  139. data/lib/au_ps_inferno/utils/attester/basic_test_attester_resource.rb +54 -0
  140. data/lib/au_ps_inferno/utils/author/basic_test_author_module.rb +12 -0
  141. data/lib/au_ps_inferno/utils/author/basic_test_author_resource.rb +32 -0
  142. data/lib/au_ps_inferno/utils/author/basic_test_author_tests.rb +24 -0
  143. data/lib/au_ps_inferno/utils/basic_test/bundle_module.rb +87 -0
  144. data/lib/au_ps_inferno/utils/basic_test/capability_operations_module.rb +37 -0
  145. data/lib/au_ps_inferno/utils/basic_test/composition_elements_and_slices_module.rb +98 -0
  146. data/lib/au_ps_inferno/utils/basic_test/composition_section_check_resources_ms_elements_module.rb +197 -0
  147. data/lib/au_ps_inferno/utils/basic_test/composition_section_read_issues_helpers_module.rb +66 -0
  148. data/lib/au_ps_inferno/utils/basic_test/composition_section_read_module.rb +127 -0
  149. data/lib/au_ps_inferno/utils/basic_test/composition_subelements_module.rb +84 -0
  150. data/lib/au_ps_inferno/utils/basic_test/ms_elements_populated_helpers_module.rb +38 -0
  151. data/lib/au_ps_inferno/utils/basic_test/ms_elements_populated_module.rb +71 -0
  152. data/lib/au_ps_inferno/utils/basic_test/ms_identifier_slices_module.rb +61 -0
  153. data/lib/au_ps_inferno/utils/basic_test/ms_sub_elements_populated_module.rb +128 -0
  154. data/lib/au_ps_inferno/utils/basic_test/paths_module.rb +26 -0
  155. data/lib/au_ps_inferno/utils/basic_test/resolve_path_debug_module.rb +45 -0
  156. data/lib/au_ps_inferno/utils/basic_test/resolve_resource_type_module.rb +52 -0
  157. data/lib/au_ps_inferno/utils/basic_test/resource_helpers_module.rb +129 -0
  158. data/lib/au_ps_inferno/utils/basic_test/scratch_bundle_entries_module.rb +30 -0
  159. data/lib/au_ps_inferno/utils/basic_test/section_bundle_validation_module.rb +70 -0
  160. data/lib/au_ps_inferno/utils/basic_test_class.rb +56 -0
  161. data/lib/au_ps_inferno/utils/basic_test_contants_module.rb +32 -0
  162. data/lib/au_ps_inferno/utils/basic_test_with_url.rb +8 -0
  163. data/lib/au_ps_inferno/utils/basic_validate_bundle_test.rb +43 -0
  164. data/lib/au_ps_inferno/utils/bundle_decorator.rb +81 -0
  165. data/lib/au_ps_inferno/utils/bundle_entry_decorator.rb +19 -0
  166. data/lib/au_ps_inferno/utils/bundle_is_valid_class.rb +31 -0
  167. data/lib/au_ps_inferno/utils/capability_statement_decorator.rb +20 -0
  168. data/lib/au_ps_inferno/utils/composition_decorator.rb +56 -0
  169. data/lib/au_ps_inferno/utils/composition_utils/boolean_and_stats.rb +28 -0
  170. data/lib/au_ps_inferno/utils/composition_utils.rb +29 -0
  171. data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_identifier_slices.rb +47 -0
  172. data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_module.rb +14 -0
  173. data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_resource.rb +32 -0
  174. data/lib/au_ps_inferno/utils/custodian/basic_test_custodian_tests.rb +19 -0
  175. data/lib/au_ps_inferno/utils/inferno_suite_generator_compat.rb +7 -0
  176. data/lib/au_ps_inferno/utils/ips_bundle_is_valid_class.rb +15 -0
  177. data/lib/au_ps_inferno/utils/ips_retrieve_bundle_test_class.rb +17 -0
  178. data/lib/au_ps_inferno/utils/ips_summary_valid_bundle_class.rb +15 -0
  179. data/lib/au_ps_inferno/utils/metadata_manager.rb +58 -0
  180. data/lib/au_ps_inferno/utils/retrieve_bundle_test_class.rb +81 -0
  181. data/lib/au_ps_inferno/utils/rich_message_class.rb +23 -0
  182. data/lib/au_ps_inferno/utils/rich_validation_message.rb +42 -0
  183. data/lib/au_ps_inferno/utils/section_decorator.rb +23 -0
  184. data/lib/au_ps_inferno/utils/section_names_mapping.rb +31 -0
  185. data/lib/au_ps_inferno/utils/section_test_class.rb +18 -0
  186. data/lib/au_ps_inferno/utils/section_test_module.rb +16 -0
  187. data/lib/au_ps_inferno/utils/structure_definition_decorator.rb +28 -0
  188. data/lib/au_ps_inferno/utils/subject/basic_test_subject_module.rb +12 -0
  189. data/lib/au_ps_inferno/utils/subject/basic_test_subject_patient_ms_other_tests.rb +15 -0
  190. data/lib/au_ps_inferno/utils/subject/basic_test_subject_resource.rb +21 -0
  191. data/lib/au_ps_inferno/utils/summary_valid_bundle_class.rb +84 -0
  192. data/lib/au_ps_inferno/utils/validator_helpers.rb +92 -0
  193. data/lib/au_ps_inferno/version.rb +6 -0
  194. data/lib/au_ps_inferno.rb +3 -0
  195. 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 Must Support sub-elements SHALL be populated if a value is known
8
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAuthorMustSupportSubelementsShallBePopulatedIfAValueIsKnown < 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_retrieve_au_ps_bundle_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,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/suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author_author_ms_elements'
6
+
7
+ require_relative 'au_ps_composition_author/suite_retrieve_au_ps_bundle_validation_tests_au_ps_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAuthor < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author
17
+
18
+ run_as_group
19
+
20
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author_author_resource_type_is_valid
21
+
22
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author_author_ms_elements
23
+
24
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_author_author_ms_subelements
25
+
26
+ test from: :suite_retrieve_au_ps_bundle_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 identifier slices SHALL be populated if a value is known
8
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionCustodianMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionCustodianMustSupportSubelementShallBePopulatedIfAValueIsKnown < 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_retrieve_au_ps_bundle_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,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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionCustodianMustSupportElementShallBePopulatedIfAValueIsKnown < 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_retrieve_au_ps_bundle_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,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'au_ps_composition_custodian/suite_retrieve_au_ps_bundle_validation_tests_au_ps_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionCustodian < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_custodian
15
+
16
+ optional
17
+
18
+ run_as_group
19
+
20
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_custodian_custodian_ms_elements
21
+
22
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_custodian_custodian_ms_subelements
23
+
24
+ test from: :suite_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMandatorySectionsAuPsCompositionMandatorySectionsCapableOfPopulatingReferencedProfiles < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMandatorySectionsAuPsCompositionMandatorySectionsAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMandatorySections < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_mandatory_sections
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_mandatory_sections_sections_shall_populated
17
+
18
+ test from: :suite_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMustSupportConformanceMandatoryMustSupportElementsAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMustSupportConformanceMustSupportSubelementsOfAComplexElementAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMustSupportConformanceOptionalMustSupportElementsAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMustSupportConformanceMustSupportSlicesAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionMustSupportConformance < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_must_support_conformance
17
+
18
+ run_as_group
19
+
20
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_must_support_conformance_composition_mandatory_ms_populated
21
+
22
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_must_support_conformance_composition_optional_ms_populated
23
+
24
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_must_support_conformance_composition_ms_subelements_populated
25
+
26
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionOptionalSectionsAuPsCompositionOptionalSectionsCapableOfPopulatingReferencedProfiles < 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_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionOptionalSectionsAuPsCompositionOptionalSectionsAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_validation_tests_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/composition_optional_sections_sections_may_populated'
4
+
5
+ require_relative 'au_ps_composition_optional_sections/composition_optional_sections_optional_sections_entry_profiles'
6
+
7
+ module AUPSTestKit
8
+ # Automatically generated primitive group for AU PS Composition Optional Sections
9
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionOptionalSections < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_optional_sections
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_optional_sections_sections_may_populated
17
+
18
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionRecommendedSectionsAuPsCompositionRecommendedSectionsCapableOfPopulatingReferencedProfiles < 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_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionRecommendedSectionsAuPsCompositionRecommendedSectionsAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_validation_tests_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/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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionRecommendedSections < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_recommended_sections
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_recommended_sections_sections_should_populated
17
+
18
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_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 identifier slices SHALL be populated if a value is known
8
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionSubjectMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionSubjectMustSupportSubelementShallBePopulatedIfAValueIsKnownAndTheParentIsPopulated < 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_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionSubjectSubjectReferenceInTheAuPsCompositionShallResolveToAValidResourceTypePatient < 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_retrieve_au_ps_bundle_validation_tests_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,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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionSubjectMustSupportElementsShallBePopulatedIfAValueIsKnown < 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_retrieve_au_ps_bundle_validation_tests_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,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'au_ps_composition_subject/composition_subject_subject_resource_type_is_valid'
4
+
5
+ require_relative 'au_ps_composition_subject/suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_subject_subject_ms_elements'
6
+
7
+ require_relative 'au_ps_composition_subject/composition_subject_subject_ms_subelements_populated'
8
+
9
+ require_relative 'au_ps_composition_subject/composition_subject_subject_ms_identifier_slices'
10
+
11
+ module AUPSTestKit
12
+ # Automatically generated primitive group for AU PS Composition Subject
13
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionSubject < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_subject
17
+
18
+ run_as_group
19
+
20
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_subject_subject_resource_type_is_valid
21
+
22
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_subject_subject_ms_elements
23
+
24
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_subject_subject_ms_subelements_populated
25
+
26
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionUndefinedSectionsUndefinedSectionsAreCorrectlyPopulated < BasicTest
9
+ title 'Undefined sections are correctly populated'
10
+ description 'Undefined sections MAY be populated if a value is known'
11
+ id :suite_retrieve_au_ps_bundle_validation_tests_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/composition_undefined_sections_sections_may_undefined'
4
+
5
+ module AUPSTestKit
6
+ # Automatically generated primitive group for AU PS Composition Undefined Sections
7
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionUndefinedSections < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_undefined_sections
11
+
12
+ optional
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_undefined_sections_sections_may_undefined
17
+ end
18
+ end