A standalone test class to exercise the Diagnostic class.
You can work with the Diagnostic class in isolation to
get a feel for what it does, using
the inner class Diagnostic.Test.
Invoke the class as a main program.
The argument choices are:
main(?LIST) -- displays recommended test sequence
main(name-test) -- displays only diagnostics for Diagnostic::Test class
main(name-diag) -- displays only diagnostics for Diagnostic class
main(name-two-classes) -- displays Diagnostic and Test class diagnostics
main(name-mult-first) -- multiple diagnostics in one class; init called first
main(name-mult-last) -- multiple diagnostics in one class; init called last
main(exceptions) -- displays just warnings and errors
main(no-warnings) -- displays just errors, no warnings
main(no-errors-with-cmd) -- suppresses errors/warnings, uses cmdline & config
main(no-cmdline) -- suppress cmdline diags from config file
main(all) -- displays diagnostics for all classes
main(version) -- displays version diagnostics for all classes
main(dup) -- duplicate diagnostic created
main(this) -- displays diagnostics for this class using InputOptions
main(no-init) -- no initialization; so displays warnings/errors upon exit
main(auto-init) -- auto-init; many-message triggers output of warnings/errors
main(auto-init-adjusted) -- auto-init due to pending limit adjusted
main(extra-init) -- auto-init followed by manual init--oops!
main(variant) -- use diag before initializing
main(mult-default) -- multiple diags, showing just default one
main(mult-extra) -- multiple diags, showing just extra one
main(mult-both) -- multiple diags, showing both
main(mult-abbr) -- multiple diag variants for one class
main("a=x","b=y",...) -- uses the specified command-line settings
main("filename","a=x","b=y",...)
-- reads config file, and overrides with the command-line settings
(Note that if you use a configuration file, to actually see any output
you must at least turn on the bit for STDERR with OUTPUT_DIAG=2.)