Closed rettema closed 2 years ago
This closes the loop directly between Conformance resources and TestScripts.
In case that we want to make an indirect link - from Conformance Resource to something that "wraps" a test plan or test instructions (which can contain 0..* testscripts) (aka a test plan), would this be incompatible? If so, can we quickly see what to do to prepare for that?
Kind regards
José
On Tue, Oct 25, 2022 at 11:09 PM Richard Ettema @.***> wrote:
What does this Pull Request do?
Add components that incorporates TestScript resources to the FHIR Artifacts page, adds new page navigation tab "TestScripts" if TestScript resources are found linked to FHIR conformance resources, and add a new TestScript layout pages based pm linked resource type. Why?
The FHIR community has been increasingly interested in provided better support for testing artifacts within IGs. These additional components are an initial enhancement that allows IGs generated from the HL7 IG template to incorporate and list TestScript resources as first class artifacts and with their associated/scoped FHIR resources. How?
New and updated components:
- ./config.json
- "extraTemplates" list - add new object for { "name": "testscripts", "description": "TestScripts" }
- "defaults" list - update all FHIR resource types to add new attributes: "template-testscripts", "testscripts"; add new "TestScript" layout
- ./includes/fragment-base-navtabs.html
- New TestScripts navigation tab logic - displays the new "TestScripts" nav tab only if linked testscript list size > 0
- ./includes/fragment-profile-navtabs.html
- New TestScripts navigation tab logic - displays the new "TestScripts" nav tab only if linked testscript list size > 0
- ./layouts/layout-canonical-testscripts.html
- New layout for TestScript resources linked to FHIR canonical resource types
- ./layouts/layout-codesystem-testscripts.html
- New layout for TestScript resources linked to FHIR CodeSystem resources
- ./layouts/layout-instance-testscripts.html
- New layout for TestScript resources linked to FHIR non-canonical resource types
- ./layouts/layout-profile-testscripts.html
- New layout for TestScript resources linked to FHIR Profiles (StructureDefinitions)
- ./layouts/layout-valueset-testscripts.html
- New layout for TestScript resources linked to FHIR ValueSet resources
- ./scripts/groupings.txt
- Add new grouping element "-test-testscript" - for FHIR Artifacts page, section "Testing Artifacts: TestScripts"
- ./scripts/onGenerate.greoup.xslt
- Add new "groupingId" variable assignment "-test-testscript" when resource is a 'TestScript' - works in conjunction with groupings.txt new grouping element (see previous bullet)
Dependencies
These modifications are dependent on the IG Publisher tool modifications in the Pull Request HL7/fhir-ig-publisher#518 https://github.com/HL7/fhir-ig-publisher/pull/518 now incorporated into the current (version 1.2.9+) IG Publisher tool.
You can view, comment on, or merge this pull request online at:
https://github.com/HL7/ig-template-base/pull/202 Commit Summary
- e0fe874 https://github.com/HL7/ig-template-base/pull/202/commits/e0fe8746454d0f94548398aa031a13e678129de4 Add TestScript layout and navigation tabs to linked resources
File Changes
(10 files https://github.com/HL7/ig-template-base/pull/202/files)
- M config.json https://github.com/HL7/ig-template-base/pull/202/files#diff-587cb980af76fdc7e52369fd0b9d926dff266976b6f8ac631e358fecc49ff8cf (62)
- M includes/fragment-base-navtabs.html https://github.com/HL7/ig-template-base/pull/202/files#diff-a3d7de294dd34d2995488fd088593771587b5af5c65f6b6ad5edc8a82ef58c1d (12)
- M includes/fragment-profile-navtabs.html https://github.com/HL7/ig-template-base/pull/202/files#diff-3e04fed0f59bee1a8fe8fcd8e2b2f2f868eae208f41acbfd84d419ac1f13bed1 (13)
- A layouts/layout-canonical-testscripts.html https://github.com/HL7/ig-template-base/pull/202/files#diff-38f10dcf750a8b4c947d1363232f9e76b9d02cf1d4815029b3c30269b16f5564 (38)
- A layouts/layout-codesystem-testscripts.html https://github.com/HL7/ig-template-base/pull/202/files#diff-49ffcfad0d631526046ebeebddedffafac3a315967eeb60055e5485f46de8616 (38)
- A layouts/layout-instance-testscripts.html https://github.com/HL7/ig-template-base/pull/202/files#diff-00b22b5939620633efff28c5570160a7fcd97e35a9ab44a67c5920387b2e68d5 (38)
- A layouts/layout-profile-testscripts.html https://github.com/HL7/ig-template-base/pull/202/files#diff-0303e92037a22cae3700053e898dd2308fc535869260226b9eaeb3c181bc6c28 (38)
- A layouts/layout-valueset-testscripts.html https://github.com/HL7/ig-template-base/pull/202/files#diff-11fa603fff003171b511ebc2d84f40506af075d6e422c6f70433268eaaf67e76 (38)
- M scripts/groupings.txt https://github.com/HL7/ig-template-base/pull/202/files#diff-7a52b7a30faefe7bb9a73d43b99f035cd527cc849405038f984fc09b7f5e1232 (4)
- M scripts/onGenerate.group.xslt https://github.com/HL7/ig-template-base/pull/202/files#diff-992fa7ad971392aac220434906bc47a20b02dca9722839bbdba30f8fef93c3ec (1)
Patch Links:
- https://github.com/HL7/ig-template-base/pull/202.patch
- https://github.com/HL7/ig-template-base/pull/202.diff
— Reply to this email directly, view it on GitHub https://github.com/HL7/ig-template-base/pull/202, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD3HUUHU5N6PTIVIBSEQMLTWFBEAVANCNFSM6AAAAAAROLMNPQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>
Jose,
These updates and additions are focused on simply rendering TestScripts as a list to those other resources that have been "scoped" as well as providing a suitable TestScript layout page. I don't believe this will be incompatible with any future additions to incorporate "test plans" and/or "test instructions".
Kind regards, Richard
This is a step forward, and I assume that later we can see what we'd change. My only attention point is about the tabs and organization of content - see below Here's how it looks like for testing a questionnaire:
A few things I notice before merging:
Jose,
Per your noticed "things":
Thanks Richard
Did you commit the test changes? I can test them when done. As for the name instead of the ID - it's not that important for now IMO. Best to have something working. As for the tab TestScripts - good that it is now called Testing - I assume that we can have the following logic:
The latter is roughly what I'd prefer (when we have more discussion, my preference will surely evolve), and what I think that such an approach could supersede the direct link to TestScript, because it can display the TestScripts in a tabular format etc. What do you think?
On Thu, Oct 27, 2022 at 3:19 PM Richard Ettema @.***> wrote:
Jose,
Per your noticed "things":
- The text says "TestScripts for the food-allergy-questionnaire ValueSet" ? This is a questionnaire.
- I have corrected this text to display the corresponding resource type.
- the link uses the id of the testscript - Maybe it should use the name / title instead?
- I do have the layout configured to display the "testscript.title". This "title" value is being populated by the IG Publisher tooling logic which appears to be assigning the "name" element's value to the "title". This will require some analysis and potential code update(s) to the IG Publisher.
- The tab is called TestScripts - if we have a "test plan" then we could end up with two extra tabs - one for Testing, one for TestScripts? or would it be the same tab?
- I have re-worked the rendering to now use "Testing" instead of "TestScripts" and will be committing those changes today. We can enhance the "Testing" layouts in the future to include additional content.
— Reply to this email directly, view it on GitHub https://github.com/HL7/ig-template-base/pull/202#issuecomment-1293516119, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD3HUUEFNUXEIUUZBUOYNUTWFJ6NXANCNFSM6AAAAAAROLMNPQ . You are receiving this because you commented.Message ID: @.***>
Yes, the current logic for showing the Testing tab is based on N TestScripts > 0. This can be updated / enhanced to include "Test Plans" once we figure out what they are.
I like the idea of "TestPlan" as a profile - either List or Composition - my initial leaning might be towards List.
I fully expect this to continue to evolve and, yes, that may likely mean "TestPlan(s)" could supersede this initial TestScript enhancement.
I think the perspective of adding a new resource / profile that supersedes it confirms that this is OK as change: We can have the link between Artifacts and TestScripts now, and we work on a TestPlan and then we do for TestPlan exactly the same as we do here. This way, authors can choose to either use test plan or just testscripts, and the publisher behaves consistently
I'd favour this PR to be merged as is now, and we continue to work on TestPlan
On Thu, Oct 27, 2022 at 3:40 PM Richard Ettema @.***> wrote:
Yes, the current logic for showing the Testing tab is based on N TestScripts > 0. This can be updated / enhanced to include "Test Plans" once we figure out what they are.
I like the idea of "TestPlan" as a profile - either List or Composition - my initial leaning might be towards List.
I fully expect this to continue to evolve and, yes, that may likely mean "TestPlan(s)" could supersede this initial TestScript enhancement.
— Reply to this email directly, view it on GitHub https://github.com/HL7/ig-template-base/pull/202#issuecomment-1293543415, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD3HUUD6DUSKD2CYXAFHPSTWFKA5HANCNFSM6AAAAAAROLMNPQ . You are receiving this because you commented.Message ID: @.***>
I didn't think of that. I hope this adds the page only for conformance resources
On Sat, 5 Nov 2022, 03:47 Lloyd McKenzie, @.***> wrote:
@.**** commented on this pull request.
The instance layout is used for examples. Presumably we don't want examples to have a testing page. Is this going to generate a bunch of empty pages that we just don't have any links to?
— Reply to this email directly, view it on GitHub https://github.com/HL7/ig-template-base/pull/202#pullrequestreview-1169297995, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD3HUUFHNB7MBMOKUIZIHJDWGXDCVANCNFSM6AAAAAAROLMNPQ . You are receiving this because you commented.Message ID: @.***>
Lloyd, Yes, the current modifications do include the Testing page on example resources. I will remove and commit that later today. Thanks.
Lloyd, The change to remove the Testing page from non-canonical resource types was straightforward and is now committed. Ready for your review (again). Thanks.
What does this Pull Request do?
Add components that incorporates TestScript resources to the FHIR Artifacts page, adds new page navigation tab "TestScripts" if TestScript resources are found linked to FHIR conformance resources, and add a new TestScript layout pages based pm linked resource type.
Why?
The FHIR community has been increasingly interested in provided better support for testing artifacts within IGs. These additional components are an initial enhancement that allows IGs generated from the HL7 IG template to incorporate and list TestScript resources as first class artifacts and with their associated/scoped FHIR resources.
How?
New and updated components:
Dependencies
These modifications are dependent on the IG Publisher tool modifications in the Pull Request https://github.com/HL7/fhir-ig-publisher/pull/518 now incorporated into the current (version 1.2.9+) IG Publisher tool.