_known_hosts_real tests were failing after commit 81794a9:
FAIL: Hosts should be put in COMPREPLY
FAIL: Hosts should have username prefix and colon suffix
This is because tcl's get_hosts() is now doing a unique sort, but bash
_known_hosts_real() IS returning duplicates relying on bash's compgen/complete
to remove the duplicates). Fixed by calling _get_hosts -unsorted.
Also made `match_items()' more strict about matching
space/newline/prompt after the last item.
Added options to match_items():
- end-newline
- end-prompt
- end-space
and transferred them to other functions.
Function `assert_complete()' now has a `-nospace' option to explicitly
disallow a space after a completion...
Function `assert_bash_list()' now expects a single item to be followed
by a newline.
The -MFile::Sp and -MFile::Spec::Func test cases fail at the moment
but are not marked as expected failures, hoping for a quick fix for
the above bug ;)
File locations are prefixed with `$::srcdir' so that `make distcheck' can
execute the test suite using a relative path.
The current working directory is removed from the test-suite-bash-prompt.
Furthermore, no more dynamic creation of files in dir $::srcdir/fixtures since
this dir is read-only during `make distcheck'. Instead create dynamic files in
$TESTDIR/tmp
The test suite uses these "directory" variables
tcl bash description
------------ ----------- ------------------------------------
$::srcdir $SRCDIR where `fixtures' reside, relative
$::srcdirabs $SRCDIRABS where `fixtures' reside, absolute
$::TESTDIR $TESTDIR where `runtest' is invoked, absolute
${tool}_start was called from within `config/default_exp', but this
proves to be error-prone, because DejaGnu isn't fully initialized at
that point, causing an error when calling one of the DejaGnu methods
pass/fail/unsupported/xfail/unresolved/untested:
can't read "multipass_name": no such variable
The right way seems to be calling ${tool}_start() from
${tool}_init().
Turn it on dynamically when needed instead; see doc/styleguide.txt for
a longer explanation. This fixes many non-filename completions which
had been previously more or less broken due to unwanted
escape-as-filenames behavior.