-
Notifications
You must be signed in to change notification settings - Fork 13
Unusual Implementation Details
While code in this test kit is intended to be as simple and as easy-to-understand as possible, sometimes unanticipated testing requirements are introduced that require special handling. The ability for Inferno to accommodate these requirements is a key feature of the Inferno framework. However, this does add complexity to maintenance of the tests.
The following is a list of unusual or unorthodox methods used in the (g)(10) Test Kit that that maintainers should be aware of. These are also opportunities for improvement of the Inferno Framework if this type of functionality would be of broad use beyond US Core.
The following links are to a specific snapshot in time of the repository; this list should be maintained as the repository evolves.
- Locking short ids:
- Add some magic around option definitions:
- Combining/deduplicating outputs:
- Reliance on groups containing mixed groups/tests only displaying the groups in the ui:
- /lib/onc_certification_g10_test_kit/multi_patient_api_stu1.rb#L73-L86
- /lib/onc_certification_g10_test_kit/single_patient_api_group.rb#L88-L112
- /lib/onc_certification_g10_test_kit/single_patient_api_group.rb#L154
- /lib/onc_certification_g10_test_kit/smart_ehr_practitioner_app_group.rb#L474-L506
- /lib/onc_certification_g10_test_kit/smart_standalone_patient_app_group.rb#L381-L413
- /lib/onc_certification_g10_test_kit/smart_v1_scopes_group.rb#L221-L239
- These complicated test imports (one for each us core version):
- Deleting inputs
- Configuring nested tests/groups
- /lib/onc_certification_g10_test_kit/smart_ehr_practitioner_app_group.rb#L256-L270
- /lib/onc_certification_g10_test_kit/smart_standalone_patient_app_group.rb#L309-L323
- /lib/onc_certification_g10_test_kit/smart_v1_scopes_group.rb#L195-L209
- /lib/onc_certification_g10_test_kit/token_introspection_group.rb#L83-L108
- Replacing groups
- Reordering groups
- Removing tests
Test kit documentation is stored within the ./docs folder of
this repository and is automatically synchronized to this wiki with each update
to the main
branch using the Publish Docs Wiki
workflow. Do not change content
within this wiki directly as changes will be overwritten.
Using this Test Kit
Contributing to this Test Kit
Reference Documents