-
Notifications
You must be signed in to change notification settings - Fork 26
Launching Conformance Tool from Gazelle
The Conformance Test tool can be launched via URL. This is intended to be used by Gazelle to coordinate the tool operation for the CAS environment.
In the URL is specified:
-
Environment
-
NOTE: CAS user mode does not allow changes to the Environment selector. The env URL paramater is ignored in CAS mode.
-
-
Test Session
-
Actor Type
-
System Id
These concepts are nested. Test Session is defined within the context of an Environment and an Actor implementation is tested within a Test Session.
The Environment contains the code set used by Document Sharing metadata, aka the Affinity Domain design. The Environment also contains the certificate used when the toolkit represents a client actor such as Document Source.
The Test Session maps, for the purpose of CAS testing, to a session in Gazelle. In toolkit a Test Session is a container for test results.
The Actor Type specifies the tests to be presented to the user. Once presented one or all of the tests may be run. Once the Conformance Tool is launched it operates independently of Gazelle although Gazelle can collect test results at a later time.
The values for Actor Type, taken from ActorType.java in toolkit are:
-
xdrsrc - XDR Document Source
-
reg - XDS Document Registry
-
rep - XDS Document Repository
-
odds - On Demand Document Source
-
rec - XDR Document Recipient
-
rg - XCA Responding Gateway
-
ig - XCA Initiating Gateway
-
cons - XDS Document Consumer
-
ids - XDS-I Imaging Document Source
-
rig - XCA-I Responding Imaging Gateway
-
idc - XDS-I Imaging Document Consumer
When this URL is used Toolkit is launched and instead of the Home Tab being presented the Conformance Test Tool is displayed. The Environment and Test Session are selected according to the URL parameters. If this Test Session has been used in this way before then it knows the system (site) under test and that is selected. If this is the first time then the system can be chosen from a pop-up that will be displayed. Once the System Under Test has been chosen for a Test Session it is stored and will not be asked for again. One implication is that the system must be configured into toolkit before this launch.
The new URL syntax uses name=value. Names are defined as a Token enumeration in the package gov.nist.toolkit.xdstools2.client.util.activitiesAndPlaces.toolContext.
ConfActor tool is backward compatible with old slash format. Using this format automatically converts to new format.
Example of launching Conformance tool using ConfActor place (using old syntax)
http://127.0.0.1:8888/Xdstools2.html#ConfActor:default/dev/reg/xds/xua/reg1
ConfActor tool new format
http://127.0.0.1:8888/Xdstools2.html#ConfActor:env=default;testSession=dev;actor=reg;profile=xds;option=xua;systemId=reg1;
These parameters are required.
env is the Environment selection - must be pre-configured into toolkit
testSession is the Test Session which maps to the Gazelle Test Session per discussion last week.
actor Actor code "reg" is used for Document Registry. The applicable codes are listed above.
These parameters are optional.
profile is the profile code. Examples are xds, mhd, xca-i, xds-i. Default value: If no profile code value is provided or if the parameter is altogether unspecified, xds is the default (with the assumption that xds profile is configured for the given actor). If no such profile is configured, it is required to pass the profile parameter with the correct code. These codes are defined in https://github.com/usnistgov/iheos-toolkit2/blob/master/actor-transaction/src/main/java/gov/nist/toolkit/actortransaction/shared/IheItiProfile.java.
option is the option code. Examples are Required, Metadata Update, XUA. These codes are defined in https://github.com/usnistgov/iheos-toolkit2/blob/master/actor-transaction/src/main/java/gov/nist/toolkit/actortransaction/shared/OptionType.java.
systemId is the system name not including the test session prefix.
The URL looks like
http://127.0.0.1:8888/Xdstools2.html#ConfActor:default/42/rep/profile/option/system
The coding with profile and option omitted (default values) looks like:
http://127.0.0.1:8888/Xdstools2.html#ConfActor:default/42/rep///system
Every thing before the # is the location of toolkit.
ConfActor is a keyword telling toolkit to launch the Conformance test tool and organize the test display by Actor (all tests for that actor are displayed. None are selected.)
These parameters are required.
default is the Environment selection - must be pre-configured into toolkit
42 is the Test Session which maps to the Gazelle Test Session per discussion last week.
rep is the code word for Document Repository. The applicable codes are listed above.
These parameters are optional.
profile is the profile code. Examples are xds, mhd, xca-i, xds-i. These codes are defined in https://github.com/usnistgov/iheos-toolkit2/blob/master/actor-transaction/src/main/java/gov/nist/toolkit/actortransaction/client/IheItiProfile.java
option is the option code. Examples are Required, Metadata Update, XUA. These codes are defined in https://github.com/usnistgov/iheos-toolkit2/blob/master/actor-transaction/src/main/java/gov/nist/toolkit/actortransaction/client/OptionType.java
system is the system name.
All of the above state is maintained in the External Cache in toolkit. In the directory specs below EC represents the location of the External Cache.
EC/TestLogCache/ - directory holding the test logs, organized by Test Session
EC/TestLogCache/42 - location of the test logs for Test Session 42
EC/TestLogCache/42/site.txt - contains the site name of the System Under Test. This is formatted as
42__rep_sut
where 42 is the Test Session and rep_sut is the Gazelle system name. Note that the Gazelle system name may not contain a double underscore "__" as that is used as a delimiter here. It may not contain white space characters.
EC/TestLogCache/42/orchestration/rep/orchestration.properties - contains state information about the test orchestration of the testing of the Repository (rep) in the system being tested in test session 42. In this example of a Repository under test, the contents of this file are
pid=P20160918162635.4^^^&1.3.6.1.4.1.21367.2005.13.20.1000&ISO
which is the Patient ID used by the orchestration module to test this Repository.
Example of launching the SimConfig Tool using the Tool place and the toolId token
http://127.0.0.1:8888/Xdstools2.html#Tool:toolId=SimConfig;env=myenv;testSession=private;systemId=ig;
Example of launching other Tools such as FindDocuments
http://127.0.0.1:8888/Xdstools2.html#Tool:toolId=FindDocuments;env=default;testSession=dev;
This function has not yet been built but it will be a small extension to the existing API that is documented at https://github.com/usnistgov/iheos-toolkit2/wiki/toolkit_api.
The primary parameter will be the Test Session ID and it will return a list of test statuses. The list will contain an entry for each test that has been attempted. Each entry will contain a boolean indicating success or failure and a list of Strings holding any error messages that have been recorded. Tests that have not been attempted will not be included. At test with multiple sections where not all sections have been attempted will be returned as a failure.
Toolkit
Downloads
Installing Toolkit
Configuring Toolkit for Imaging Tests
Reporting Toolkit Installation Problems
Environment
Test Session
Conformance Test Tool
Writing Conformance Tests
Overview of Imaging Tests
Test Context Definition
Launching Conformance Tool from Gazelle
Inspector
External Cache
Support Tools
Test Organization
Configuring Test Kits
Managing Multiple Test Kits
SAML Validation against Gazelle
Renaming Toolkit
Toolkit API
Managing system configurations
Configuring Toolkit for Connectathon
Developer's blog