sigil/tests/default.nix

52 lines
1.4 KiB
Nix
Raw Normal View History

2019-10-03 19:50:34 +02:00
# SPDX-FileCopyrightText: Emery Hemingway
#
# SPDX-License-Identifier: LicenseRef-Hippocratic-1.1
let
tests = call: {
fs_report = call ./fs_report.nix { };
libc = call ./libc.nix { };
log = call ./log.nix { };
signal = call ./signal.nix { };
2019-10-06 20:35:54 +02:00
solo5 = call ./solo5.nix { };
2019-10-08 09:48:45 +02:00
solo5-ping = call ./solo5-ping.nix { };
};
in
{ genodepkgs ? import ./../default.nix { }
, nixpkgs ? import ./../nixpkgs.nix
, dhall-haskell
}:
2019-10-03 19:50:34 +02:00
let
hostPkgs = import nixpkgs {
overlays = [ (self: super: { dhall = dhall-haskell.linux-dhall; }) ];
};
testPkgs = genodepkgs;
2019-10-03 19:50:34 +02:00
lib = hostPkgs.lib // {
2019-10-03 19:50:34 +02:00
renderDhallInit = path: args:
hostPkgs.runCommand "init.xml" {
buildInputs = [ hostPkgs.dhall ];
2019-10-03 19:50:34 +02:00
initConfig = path;
initArgs = args;
DHALL_PRELUDE = "${testPkgs.dhallPackages.prelude}/package.dhall";
DHALL_GENODE = "${testPkgs.dhallPackages.genode}/package.dhall";
2019-10-03 19:50:34 +02:00
} ''
export XDG_CACHE_HOME=$NIX_BUILD_TOP
echo 'let Prelude = env:DHALL_GENODE in Prelude.Init.render (Prelude.Init.defaults { children = toMap (env:initConfig env:initArgs) })' \
| dhall text \
2019-10-03 19:50:34 +02:00
> $out
'';
};
in {
x86_64 = {
linux = tests
(import ./driver-linux.nix { inherit testPkgs hostPkgs lib; }).callTest;
nova = tests
(import ./driver-nova.nix { inherit testPkgs hostPkgs lib; }).callTest;
};
2019-10-03 19:50:34 +02:00
}