forked from lix-project/nix-eval-jobs
add test for evaluation errors
This commit is contained in:
parent
e7c30b306d
commit
f970ec3524
2 changed files with 15 additions and 0 deletions
|
@ -7,5 +7,7 @@
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
hydraJobs = import ./ci.nix { inherit pkgs; };
|
hydraJobs = import ./ci.nix { inherit pkgs; };
|
||||||
|
|
||||||
|
legacyPackages.x86_64-linux.brokenPackage = throw "this is an evaluation error";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -68,3 +68,16 @@ def test_expression() -> None:
|
||||||
|
|
||||||
with open(TEST_ROOT.joinpath("assets/ci.nix"), "r") as ci_nix:
|
with open(TEST_ROOT.joinpath("assets/ci.nix"), "r") as ci_nix:
|
||||||
common_test(["-E", ci_nix.read()])
|
common_test(["-E", ci_nix.read()])
|
||||||
|
|
||||||
|
def test_eval_error() -> None:
|
||||||
|
with TemporaryDirectory() as tempdir:
|
||||||
|
cmd = [str(BIN), "--gc-roots-dir", tempdir, "--meta", "--flake", ".#legacyPackages.x86_64-linux"]
|
||||||
|
res = subprocess.run(
|
||||||
|
cmd,
|
||||||
|
cwd=TEST_ROOT.joinpath("assets"),
|
||||||
|
text=True,
|
||||||
|
stdout=subprocess.PIPE,
|
||||||
|
)
|
||||||
|
attrs = json.loads(res.stdout)
|
||||||
|
assert attrs["attr"] == "brokenPackage"
|
||||||
|
assert "this is an evaluation error" in attrs["error"]
|
||||||
|
|
Loading…
Reference in a new issue