python3Packages.pywikibot: init at 9.5.0 (#333068)
[NixPkgs.git] / pkgs / build-support / trivial-builders / test / link-farm.nix
blob1ebfc707632f3178918eda4e2ef7f0d6d2d0d646
1 { linkFarm, hello, writeTextFile, runCommand }:
2 let
3   foo = writeTextFile {
4     name = "foo";
5     text = "foo";
6   };
8   linkFarmFromList = linkFarm "linkFarmFromList" [
9     { name = "foo"; path = foo; }
10     { name = "hello"; path = hello; }
11   ];
13   linkFarmWithRepeats = linkFarm "linkFarmWithRepeats" [
14     { name = "foo"; path = foo; }
15     { name = "hello"; path = hello; }
16     { name = "foo"; path = hello; }
17   ];
19   linkFarmFromAttrs = linkFarm "linkFarmFromAttrs" {
20     inherit foo hello;
21   };
23 runCommand "test-linkFarm" { } ''
24   function assertPathEquals() {
25     local a b;
26     a="$(realpath "$1")"
27     b="$(realpath "$2")"
28     if [ "$a" != "$b" ]; then
29       echo "path mismatch!"
30       echo "a: $1 -> $a"
31       echo "b: $2 -> $b"
32       exit 1
33     fi
34   }
36   assertPathEquals "${linkFarmFromList}/foo" "${foo}"
37   assertPathEquals "${linkFarmFromList}/hello" "${hello}"
39   assertPathEquals "${linkFarmWithRepeats}/foo" "${hello}"
40   assertPathEquals "${linkFarmWithRepeats}/hello" "${hello}"
42   assertPathEquals "${linkFarmFromAttrs}/foo" "${foo}"
43   assertPathEquals "${linkFarmFromAttrs}/hello" "${hello}"
44   touch $out