cfengine/core — pull request #1476 by kacfengine (2014-02-26 09:23:06+00:00)
Title: Redmine #4607: Implement support for additional test outcomes.

Implements support for the three test outcomes:
- Skipped/unsupported: Happens when the underlying platform doesn't
(and can never) support a feature (e.g. symlinks on Windows).
- Skipped/needs work: Happens when a test is skipped because the
test itself is carried out incorrectly on that platform.
- Suppressed fail: Happens when a test receives a failure result,
but without stopping the build. This is meant to be used when
there is a real bug, but we are willing to tolerate it at the
moment.

In each test you specify one of them like this:

bundle agent test
{
meta:
# Class expression giving platforms that should be skipped.
"test_skip_unsupported" string => "hpux";
}

bundle agent test
{
meta:
# Class expression giving platforms that should be skipped
"test_skip_needs_work" string => "hpux";
}

bundle agent test
{
meta:
# Class expression giving platforms where we suppress a failure.
"test_suppress_fail" string => "hpux",
meta => { "redmine1234" };
}

which will be picked up by the test framework automatically.