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,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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionOptionalSectionsAuPsCompositionOptionalSectionsCapableOfPopulatingReferencedProfiles < 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_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionOptionalSectionsAuPsCompositionOptionalSectionsAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionOptionalSections < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_optional_sections
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_optional_sections_sections_may_populated
17
+
18
+ test from: :suite_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionRecommendedSectionsAuPsCompositionRecommendedSectionsCapableOfPopulatingReferencedProfiles < 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_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionRecommendedSectionsAuPsCompositionRecommendedSectionsAreCorrectlyPopulated < 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_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionRecommendedSections < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_recommended_sections
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_recommended_sections_sections_should_populated
17
+
18
+ test from: :suite_generate_au_ps_using_ips_summary_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 elements SHALL be populated if a value is known
8
+ class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionSubjectMustSupportElementsShallBePopulatedIfAValueIsKnown < 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_subject_subject_ms_elements
12
+
13
+ def metadata_manager
14
+ @metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
15
+ end
16
+
17
+ run do
18
+ ms_elements_populated_message('subject')
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../../../utils/basic_test_class'
4
+ require_relative '../../../utils/metadata_manager'
5
+
6
+ module AUPSTestKit
7
+ # Automatically generated primitive test for Must Support identifier slices SHALL be populated if a value is known
8
+ class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionSubjectMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionSubjectMustSupportSubelementShallBePopulatedIfAValueIsKnownAndTheParentIsPopulated < 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_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionSubjectSubjectReferenceInTheAuPsCompositionShallResolveToAValidResourceTypePatient < 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_generate_au_ps_using_ips_summary_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,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/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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionSubject < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_subject
17
+
18
+ run_as_group
19
+
20
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_subject_subject_resource_type_is_valid
21
+
22
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_subject_subject_ms_elements
23
+
24
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_subject_subject_ms_subelements_populated
25
+
26
+ test from: :suite_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionUndefinedSectionsUndefinedSectionsAreCorrectlyPopulated < BasicTest
9
+ title 'Undefined sections are correctly populated'
10
+ description 'Undefined sections MAY be populated if a value is known'
11
+ id :suite_generate_au_ps_using_ips_summary_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 AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsAuPsCompositionUndefinedSections < 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_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_undefined_sections
11
+
12
+ optional
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_undefined_sections_sections_may_undefined
17
+ end
18
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../../../utils/basic_test_class'
4
+ require_relative '../../../utils/metadata_manager'
5
+
6
+ require_relative '../../../utils/summary_valid_bundle_class'
7
+
8
+ require_relative '../../../utils/ips_summary_valid_bundle_class'
9
+
10
+ module AUPSTestKit
11
+ # Automatically generated primitive test for Generated Bundle is valid against AU PS Bundle profile
12
+ class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsBundleValidationGeneratedBundleIsValidAgainstAuPsBundleProfile < SummaryValidBundleClass
13
+ title 'Generated Bundle is valid against AU PS Bundle profile'
14
+ description 'Verifies that a bundle produced by the IPS $summary operation conforms to the AU PS Bundle profile.'
15
+ id :suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid
16
+
17
+ def metadata_manager
18
+ @metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../../../utils/basic_test_class'
4
+ require_relative '../../../utils/metadata_manager'
5
+
6
+ require_relative '../../../utils/summary_valid_bundle_class'
7
+
8
+ require_relative '../../../utils/ips_summary_valid_bundle_class'
9
+
10
+ module AUPSTestKit
11
+ # Automatically generated primitive test for Generated Bundle is valid against IPS Bundle profile
12
+ class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsBundleValidationGeneratedBundleIsValidAgainstIpsBundleProfile < IpsSummaryValidBundleClass
13
+ title 'Generated Bundle is valid against IPS Bundle profile'
14
+ description 'Verifies that a bundle produced by the IPS $summary operation conforms to the IPS Bundle profile.'
15
+ id :suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid_ips
16
+
17
+ def metadata_manager
18
+ @metadata_manager ||= MetadataManager.new(File.expand_path('../../../metadata.yaml', __dir__))
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'bundle_validation/suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid'
4
+
5
+ require_relative 'bundle_validation/suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid_ips'
6
+
7
+ module AUPSTestKit
8
+ # Automatically generated primitive group for Bundle Validation
9
+ class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTestsBundleValidation < Inferno::TestGroup
10
+ title 'Bundle Validation'
11
+ description 'Validates that the bundle conforms to the Bundle profiles.'
12
+ id :suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation
13
+
14
+ run_as_group
15
+
16
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid
17
+
18
+ test from: :suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation_bundle_valid_ips
19
+ end
20
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'bundle_validation'
4
+
5
+ require_relative 'au_ps_bundle_must_support_conformance'
6
+
7
+ require_relative 'au_ps_composition_must_support_conformance'
8
+
9
+ require_relative 'au_ps_composition_mandatory_sections'
10
+
11
+ require_relative 'au_ps_composition_recommended_sections'
12
+
13
+ require_relative 'au_ps_composition_optional_sections'
14
+
15
+ require_relative 'au_ps_composition_undefined_sections'
16
+
17
+ require_relative 'au_ps_composition_subject'
18
+
19
+ require_relative 'au_ps_composition_author'
20
+
21
+ require_relative 'au_ps_composition_custodian'
22
+
23
+ require_relative 'au_ps_composition_attester'
24
+
25
+ module AUPSTestKit
26
+ # Automatically generated high order group for Generate AU PS using IPS $summary validation tests
27
+ class AUPSSuiteGenerateAuPsUsingIpsSummaryValidationTests < Inferno::TestGroup
28
+ title 'Generate AU PS using IPS $summary validation tests'
29
+ description 'Generate AU Patient Summary using IPS $summary operation and verify response is valid AU PS Bundle'
30
+ id :suite_generate_au_ps_using_ips_summary_validation_tests
31
+
32
+ run_as_group
33
+
34
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_bundle_validation
35
+
36
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_bundle_must_support_conformance
37
+
38
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_must_support_conformance
39
+
40
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_mandatory_sections
41
+
42
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_recommended_sections
43
+
44
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_optional_sections
45
+
46
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_undefined_sections
47
+
48
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_subject
49
+
50
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_author
51
+
52
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_custodian
53
+
54
+ group from: :suite_generate_au_ps_using_ips_summary_validation_tests_au_ps_composition_attester
55
+ end
56
+ 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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsBundleMustSupportConformanceAuPsBundleMustSupportElementsAreCorrectlyPopulated < 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_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsBundleMustSupportConformance < 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_retrieve_au_ps_bundle_validation_tests_au_ps_bundle_must_support_conformance
11
+
12
+ run_as_group
13
+
14
+ test from: :suite_retrieve_au_ps_bundle_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAttesterMustSupportElementsShallBePopulatedIfAValueIsKnown < 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_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAttesterMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAttesterMustSupportSubelementShallBePopulatedIfAValueIsKnown < 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_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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAttester < 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_retrieve_au_ps_bundle_validation_tests_au_ps_composition_attester
15
+
16
+ optional
17
+
18
+ run_as_group
19
+
20
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_attester_attester_party_ms_elements
21
+
22
+ test from: :suite_retrieve_au_ps_bundle_validation_tests_au_ps_composition_attester_attester_party_ms_subelements
23
+
24
+ test from: :suite_retrieve_au_ps_bundle_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 identifier slices SHALL be populated if a value is known
8
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAuthorMustSupportIdentifierSlicesShallBePopulatedIfAValueIsKnown < 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_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 Author reference in the AU PS Composition SHALL resolve to a valid resource type (Practitioner, PractitionerRole, Device, Patient, RelatedPerson, Organization).
8
+ class AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAuthorAuthorReferenceInTheAuPsCompositionShallResolveToAValidResourceTypePractitionerPractitionerroleDevicePatientRelatedpersonOrganization < 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_retrieve_au_ps_bundle_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,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 AUPSSuiteRetrieveAuPsBundleValidationTestsAuPsCompositionAuthorMustSupportElementsShallBePopulatedIfAValueIsKnown < 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_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