forked from mirrors/nixpkgs
add better documentation comments to lib.runTests
This commit is contained in:
parent
03fb722016
commit
70c36dcfb8
|
@ -109,6 +109,8 @@ rec {
|
||||||
traceSeqN 2 { a.b.c = 3; } null
|
traceSeqN 2 { a.b.c = 3; } null
|
||||||
trace: { a = { b = {…}; }; }
|
trace: { a = { b = {…}; }; }
|
||||||
=> null
|
=> null
|
||||||
|
|
||||||
|
Type: traceSeqN :: Int -> a -> b -> b
|
||||||
*/
|
*/
|
||||||
traceSeqN = depth: x: y:
|
traceSeqN = depth: x: y:
|
||||||
let snip = v: if isList v then noQuotes "[…]" v
|
let snip = v: if isList v then noQuotes "[…]" v
|
||||||
|
@ -173,17 +175,68 @@ rec {
|
||||||
|
|
||||||
# -- TESTING --
|
# -- TESTING --
|
||||||
|
|
||||||
/* Evaluate a set of tests. A test is an attribute set `{expr,
|
/* Evaluates a set of tests.
|
||||||
expected}`, denoting an expression and its expected result. The
|
|
||||||
result is a list of failed tests, each represented as `{name,
|
A test is an attribute set `{expr, expected}`,
|
||||||
expected, actual}`, denoting the attribute name of the failing
|
denoting an expression and its expected result.
|
||||||
|
|
||||||
|
The result is a `list` of __failed tests__, each represented as
|
||||||
|
`{name, expected, result}`,
|
||||||
|
|
||||||
|
- expected
|
||||||
|
- What was passed as `expected`
|
||||||
|
- result
|
||||||
|
- The actual `result` of the test
|
||||||
|
|
||||||
|
Denoting the attribute name of the failing
|
||||||
test and its expected and actual results.
|
test and its expected and actual results.
|
||||||
|
|
||||||
Used for regression testing of the functions in lib; see
|
Used for regression testing of the functions in lib; see
|
||||||
tests.nix for an example. Only tests having names starting with
|
tests.nix for an example.
|
||||||
|
|
||||||
|
> Important: In general only `tests` having names starting with
|
||||||
"test" are run.
|
"test" are run.
|
||||||
|
|
||||||
Add attr { tests = ["testName"]; } to run these tests only.
|
- Add attr { tests = ["testName"]; } to run tests from list only.
|
||||||
|
- If `tests` in not specififed all tests will be evaluated.
|
||||||
|
|
||||||
|
Example:
|
||||||
|
|
||||||
|
runTests {
|
||||||
|
testAndOk = {
|
||||||
|
expr = lib.and true false;
|
||||||
|
expected = false;
|
||||||
|
};
|
||||||
|
testAndFail = {
|
||||||
|
expr = lib.and true false;
|
||||||
|
expected = true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
->
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name = "testAndFail";
|
||||||
|
expected = true;
|
||||||
|
result = false;
|
||||||
|
}
|
||||||
|
]
|
||||||
|
|
||||||
|
Type:
|
||||||
|
runTests :: {
|
||||||
|
tests = [ String ];
|
||||||
|
${testName} :: {
|
||||||
|
expr :: a;
|
||||||
|
expected :: a;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
->
|
||||||
|
[
|
||||||
|
{
|
||||||
|
name :: String;
|
||||||
|
expected :: a;
|
||||||
|
result :: a;
|
||||||
|
}
|
||||||
|
]
|
||||||
*/
|
*/
|
||||||
runTests =
|
runTests =
|
||||||
# Tests to run
|
# Tests to run
|
||||||
|
|
Loading…
Reference in a new issue