tests.buildenv: test name/pname/version handling
Verify that: - `name` argument is used directly as the derivation name - `pname` + `version` composes into the derivation name - Omitting all three triggers the buildEnv-specific assertion The assertion test uses `builtins.tryEval` + `builtins.seq` to force evaluation of .drvPath and confirm it throws.
This commit is contained in:
+24
-1
@@ -15,7 +15,30 @@ let
|
||||
};
|
||||
};
|
||||
|
||||
tests = { };
|
||||
tests-name = {
|
||||
testNameFromNameArg = {
|
||||
expr =
|
||||
(buildEnv {
|
||||
name = "test-env";
|
||||
paths = [ ];
|
||||
}).name;
|
||||
expected = "test-env";
|
||||
};
|
||||
|
||||
testNameFromPnameVersion = {
|
||||
expr =
|
||||
(buildEnv {
|
||||
pname = "test-env";
|
||||
version = "1.0";
|
||||
paths = [ ];
|
||||
}).name;
|
||||
expected = "test-env-1.0";
|
||||
};
|
||||
|
||||
testMissingNameThrows = testingThrow (buildEnv { paths = [ ]; }).drvPath;
|
||||
};
|
||||
|
||||
tests = tests-name;
|
||||
in
|
||||
|
||||
stdenvNoCC.mkDerivation (finalAttrs: {
|
||||
|
||||
Reference in New Issue
Block a user