hciroutetest

This command tests interfaces. hciroutetest simulates the route from a particular source thread. In this simulation, all TPS modules and translations that are u sed by the source thread are enacted.

hciroutetest runs any inbound TPS for the source thread before it passes the messages to route and translate. This is necessary because the TPS often sets up metadata that is required for further processing.

For hciroutetest to run translate procs in startup mode, select the Run Translation Procs in Start Mode check box on the Process Configuration dialog box. This is found at Process > Configure in Network Configurator.

hciroutetest [-a] [-x encoding] [-d] [-t] [-e "proc args"] 
[-p "proc {args}"] [-f format] [-c drivercontrol] 
[-w search_expression] [-L] [-i] [-n] [-r thread] [-s savebase] 
thread file 
  • -a processes all records in the file.
  • -x encoding encodes from encoding to UTF-8.
  • -d processes as DATA messages.
  • -t runs the outbound TPS. When this is defined, only outbound TPS in the same site is run; all inter-site threads are ignored.
    • If -t is specified, then there must be a defined outbound TPS; otherwise, a warning results. Only the TPS that is in the same site is run; no inter-site.
    • All outbound TPS that are defined in the route path are run once with start mode. Be cautious with global variables.
    • If both -t and -e are defined, then the outbound TPS are run before -e, so that output messages become input messages to the procedure.
    • TPS uses the same disposition policy as translation post queue. The messages for KILL, OVER, and ERROR dispositions are discarded.
    • OB TPS and Send to Proc use different Tcl interpreters. OB TPS uses the same Tcl interpreter as IB TPS.
  • -e "proc args" specifies end processing configuration.
  • -p "proc {args}" specifies error processing configuration. The specified error TPS is used when any message fails to do xlate/route.

    If -p is given, then hciroutetest uses the given error TPS to handle any failed messages.

    If -p is not given, then hciroutetest uses the error TPS defined in NetConfig.

    This option catches any message which fails in xlate/route; only error information is shown in stderr.

  • -f format specifies the input file format.
    • -f len10 specifies 10-byte length-encoded.
    • -f nl specifies newline terminated. This is the default.
    • -f eof specifies end-of-file terminated.
  • -c drivercontrol is used to set the content to message metadata DRIVERCONTROL. You can input any content to set to drivercontrol using this option.
  • For Route test on DICOM messages, -c drivercontrol is required, where drivercontrol is {AbstractSyntax***} {TransferSyntax***}. This is required to get the TRX ID. See DICOM abstract syntax values and DICOM transfer syntaxvalues .

    Example:

    hciroutetest –a –x UTF-8 –f eof –c "AbstractSyntax 1.2.840.10008.5.1.4.1.1.4} 
    {TransferSyntax 1.2.840.10008.1.2.4.91}" CL_SCP c_store.dat
  • -w search_expression specifies the search string or wildcard for which to search. Only the lines of output matching the search expression are printed out.
  • -L specifies Tcl handle leak detection.
  • -i shows the input source message ID in stdout.

    This shows information about the source message so that when -a is used, you can know the relationship between the output message and input message.

  • -n shows intermediate branched and chained messages.
  • -r thread processes as REPLY to thread.
  • -s savebase specifies the Save File base name.
  • thread specifies the source thread to simulate.
  • file specifies the data file with which to test.
Note:  This information displays also on the Testing Tool in Preview Command to Issue as the test is built.

Global variable support

Global variable support is available for the hciroutetest command line tool. The global variable indicator $$ has a conflict with the shell special variable, which has meaning as the current PID on Linux/AIX platforms. To use a global variable in the Testing Tool on Linux/AIX plaforms, escape the $$ using one of these forms. For example:

  • hciroutetest -a '$$variablename'
  • hciroutetest -a \$\$variablename

On Windows, use hciroutetest -a $$variablename.