Skip to content

Launching Conformance Tool from Gazelle

Sunil Bhaskarla edited this page Nov 27, 2018 · 8 revisions

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.

URL Syntax

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.

systemId is the system name not including the test session prefix.

URL Syntax (Deprecated)

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.

system is the system name.

Supporting details in toolkit

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.

Launching Other Tools

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;

Retrieving test status via the Toolkit API (TBD)

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.

Clone this wiki locally