Add command-line arguments to configure the TCK (instead of environment variables)
As described in #6 (closed) we will need to support a client-server mode.
For this purpose, the TCK will need to support additional arguments (such as the command to start/stop the server or the target server's URL).
Currently, we use an environment variable to pass the path to the CLI adapter. To avoid having a multitude of environment variables and simplify the configuration, I think we could add command-line arguments to the TCK.
Luckily, recent versions of Node.js can use
util.parseArgs to parse command-line arguments (https://nodejs.org/api/util.html#utilparseargsconfig) so we won't need to use a third-party library.
As I explained in this comment: #6 (comment 1156320), here is what I propose:
$ asciidoc-tck server --start-command=/path/to/start-server --stop-command=/path/to/stop-server --url=https://localhost:8081/asciidoc-tck-adapter
--urlmust be defined.
--urlis optional, if missing use the value returned by
--start-commandis optional, if missing use the
NOTE: If both,
--url are defined, I think we should execute the start command but use the value of the specified URL (rather than the value returned by the start command)?
$ asciidoc-tck cli --command=/path/to/adapter-thus-runs-standalone
We could also support shorthand commands:
# shorthand $ asciidoc-tck cli /path/to/adapter-thus-runs-standalone $ asciidoc-tck /path/to/adapter-thus-runs-standalone