{"id":24752038,"url":"https://github.com/inferno-framework/davinci-crd-test-kit","last_synced_at":"2025-10-10T23:30:19.773Z","repository":{"id":243264744,"uuid":"811941893","full_name":"inferno-framework/davinci-crd-test-kit","owner":"inferno-framework","description":null,"archived":false,"fork":false,"pushed_at":"2024-11-06T19:26:03.000Z","size":678,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-01T22:46:54.321Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/inferno-framework.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-07T15:59:47.000Z","updated_at":"2024-11-06T19:18:26.000Z","dependencies_parsed_at":"2024-09-05T16:30:20.948Z","dependency_job_id":null,"html_url":"https://github.com/inferno-framework/davinci-crd-test-kit","commit_stats":null,"previous_names":["inferno-framework/davinci-crd-test-kit"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inferno-framework%2Fdavinci-crd-test-kit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inferno-framework%2Fdavinci-crd-test-kit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inferno-framework%2Fdavinci-crd-test-kit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inferno-framework%2Fdavinci-crd-test-kit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/inferno-framework","download_url":"https://codeload.github.com/inferno-framework/davinci-crd-test-kit/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":236003630,"owners_count":19079666,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-28T10:34:35.154Z","updated_at":"2025-10-10T23:30:13.925Z","avatar_url":"https://github.com/inferno-framework.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Da Vinci Coverage Requirements Discovery (CRD) Test Kit\n\nThis is an [Inferno](https://github.com/inferno-community/inferno-core) test kit\nfor the [Da Vinci Coverage Requirements Discovery (CRD) FHIR Implementation\nGuide v2.0.1](https://hl7.org/fhir/us/davinci-crd/STU2).\n\nIt contains test suites to test the two actors defined by the CRD specification:\n- [CRD\n  Client](https://hl7.org/fhir/us/davinci-crd/STU2/CapabilityStatement-crd-client.html):\n  responsible for initiating CDS Hooks calls and consuming received decision\n  support. It is also responsible for returning data requested by the CRD Server\n  needed to provide that decision support.\n- [CRD\n  Server](https://hl7.org/fhir/us/davinci-crd/STU2/CapabilityStatement-crd-server.html):\n  responsible for responding to CDS Hooks calls and responding with appropriate\n  decision support.\n\nThis test kit is [open\nsource](https://github.com/inferno-framework/davinci-crd-test-kit#LICENSE) and\nfreely available for use or adoption by the Health IT community including EHR\nvendors, health app developers, and testing labs.\n\n## Status\n\nThese tests are a **DRAFT** intended to allow CRD implementers to perform\npreliminary checks of their implementations against the CRD IG requirements and\nprovide feedback on the tests. Future versions of these tests may validate other\nrequirements and may change how these are tested.\n\nAdditional details on the IG requirements that underlie this test kit can be\nfound in this [CRD testing note](docs/crd-testing-notes.md). The document\nincludes the requirements extracted from the IG and specifies the ones that are\nnot testable.\n\n## Test Scope and Limitations\n\nDocumentation of the current tests and their limitations can be found in each\nsuite's (client and server) description when the tests are run.\n\n### Test Scope\n\nAt a high-level, the tests check:\n\n- **Client Suite**:\n  - The ability of a CRD client to initiate CDS Hooks calls.\n  - The ability of a CRD client to support the FHIR interactions defined in the\n    implementation guide.\n- **Server Suite**:\n  - The ability of a CRD server to return a valid response when invoking its\n    discovery endpoint.\n  - The ability of a CRD server to return a valid response when invoking a\n    supported hook, including producing the required response types across all\n    hooks invoked.\n\n### Limitations\n\n- **Client Suite**:\n  - This suite does not implement any payer business logic, so the responses to\n    hook calls are simple hard-coded responses.\n  - The tests cannot verify that a client is able to consume the received\n    decision support. Testers should consider this requirement to be verified\n    through attestation and should not represent their systems as having passed\n    these tests if this requirement is not met.\n  - Hook configuration is not tested.\n- **Server Suite**:\n  - Inferno is unable to determine what requests will result in specific kinds\n    of responses from the server under test (e.g., what will result in\n    Instructions being returned vs. Coverage Information). As a result, the\n    tester must supply the request bodies that will cause the system under test\n    to return the desired response types.\n  - The ability of a CRD server to request additional FHIR resources is not\n    tested.\n  - Hook configuration is not tested.\n\n## How to Run\n\nUse either of the following methods to run the suites within this test kit. If\nyou would like to try out the tests but don’t have a CRD implementation, the\ntest home pages include instructions for trying out the tests, including\n\n- For server testing: a [public CRD server reference\n  implementation](https://crd.davinci.hl7.org/) ([code on\n  github](https://github.com/HL7-DaVinci/CRD?tab=readme-ov-file))\n- For client testing: a [public CRD client reference\n  implementation](https://crd-request-generator.davinci.hl7.org/) ([code on\n  github](https://github.com/HL7-DaVinci/CRD?tab=readme-ov-file))\n\nDetailed instructions can be found in the suite descriptions when the tests are\nrun.\n\n### ONC Hosted Instance\n\nYou can run the CRD test kit via the [ONC\nInferno](https://inferno.healthit.gov/test-kits/davinci-crd/) website by\nchoosing the “Da Vinci Coverage Requirements Discovery (CRD) Test Kit”.\n\n### Local Inferno Instance\n\n- Download the source code from this repository.\n- Open a terminal in the directory containing the downloaded code.\n- In the terminal, run `setup.sh`.\n- In the terminal, run `run.sh`.\n- Use a web browser to navigate to `http://localhost`.\n\n## Providing Feedback and Reporting Issues\n\nWe welcome feedback on the tests, including but not limited to the following areas:\n- Validation logic, such as potential bugs, lax checks, and unexpected failures.\n- Requirements coverage, such as requirements that have been missed and tests\n  that necessitate features that the IG does not require.\n- User experience, such as confusing or missing information in the test UI.\n\nPlease report any problems with these tests in Github Issues. The team may also\nbe reached in the [#inferno Zulip\nstream](https://chat.fhir.org/#narrow/stream/179309-inferno).\n\n## License\n\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\nthis file except in compliance with the License. You may obtain a copy of the\nLicense at\n```\nhttp://www.apache.org/licenses/LICENSE-2.0\n```\nUnless required by applicable law or agreed to in writing, software distributed\nunder the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\nCONDITIONS OF ANY KIND, either express or implied. See the License for the\nspecific language governing permissions and limitations under the License.\n\n## Trademark Notice\n\nHL7, FHIR and the FHIR [FLAME DESIGN] are the registered trademarks of Health\nLevel Seven International and their use does not constitute endorsement by HL7.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finferno-framework%2Fdavinci-crd-test-kit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finferno-framework%2Fdavinci-crd-test-kit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finferno-framework%2Fdavinci-crd-test-kit/lists"}