tests: add exit case "KNOWN FAILED"

Now we can mark tests as known to be broken without bothering
users with exit failure. In the build log this "KNOWN FAILED"
may be interpreted as TODO ;)

The main advantage of "known-fail" instead of just skipping
is that we will still find the test diff.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
tests: allow to add or override test suite options

Now we can do something like this
  make check TS_OPTS="--fake --parallel=32"

Note we still always set --parallel but the last one wins.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
tests: style Makefile and make output

We break long lines and make output sill looks nice with and without
V=1.

As a side effect we can now run
  make TS_COMMAND="true"
to do nothing but building all check_PROGRAMS.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
Merge branch 'tests-features' into tmp
tests: ts_device_init remove useless error handling

Don't know why we should deinit the empty string.

This patch prepares further refactoring or error handling.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
tests: add function ts_check_losetup

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
tests: use ts_check_losetup in losetup test

In losetup test we have to handle the special case that ts_check_losetup
requires a working losetup.

Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
tests: ts_device_init requires loop support