2020-06-27 23:14:41 +02:00
|
|
|
|
{ writeScriptBin, assertEq, it, runTestsuite, getBins }:
|
|
|
|
|
|
|
|
|
|
let
|
|
|
|
|
drv = writeScriptBin "hello" "it’s me";
|
|
|
|
|
drv2 = writeScriptBin "goodbye" "tschau";
|
|
|
|
|
|
|
|
|
|
bins = getBins drv [
|
2022-01-30 17:06:58 +01:00
|
|
|
|
"hello"
|
|
|
|
|
{ use = "hello"; as = "also-hello"; }
|
|
|
|
|
]
|
|
|
|
|
// getBins drv2 [ "goodbye" ]
|
|
|
|
|
;
|
2020-06-27 23:14:41 +02:00
|
|
|
|
|
|
|
|
|
simple = it "path is equal to the executable name" [
|
|
|
|
|
(assertEq "path"
|
|
|
|
|
bins.hello
|
|
|
|
|
"${drv}/bin/hello")
|
|
|
|
|
(assertEq "content"
|
|
|
|
|
(builtins.readFile bins.hello)
|
|
|
|
|
"it’s me")
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
useAs = it "use/as can be used to rename attributes" [
|
|
|
|
|
(assertEq "path"
|
|
|
|
|
bins.also-hello
|
|
|
|
|
"${drv}/bin/hello")
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
secondDrv = it "by merging attrsets you can build up bins" [
|
|
|
|
|
(assertEq "path"
|
|
|
|
|
bins.goodbye
|
|
|
|
|
"${drv2}/bin/goodbye")
|
|
|
|
|
];
|
|
|
|
|
|
|
|
|
|
in
|
2022-01-30 17:06:58 +01:00
|
|
|
|
runTestsuite "getBins" [
|
|
|
|
|
simple
|
|
|
|
|
useAs
|
|
|
|
|
secondDrv
|
|
|
|
|
]
|