aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaximilian Bosch <maximilian@mbosch.me>2024-05-03 17:17:16 +0200
committerMaximilian Bosch <maximilian@mbosch.me>2024-05-03 22:54:38 +0000
commite91be79d8eca848d68b3407b1decaf6a486b22d2 (patch)
treeae94ad84f28d71bcd1b1523ded9449b2bfe87324
parent0e38720502c10ddba4afb8c49532b69be83e23a7 (diff)
tests/flakes/follow-paths: test that warning about non-existent input works recursively
When I added the warning that an input X has an override for a non-existent input, the recursive flake input override fix wasn't implemented yet[1]. This patch tests that both work together. [1] https://github.com/NixOS/nix/pull/6663 Change-Id: I90dc032029b7160ab4a97d28c480c59d3a6f0150
-rw-r--r--tests/functional/flakes/follow-paths.sh17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/functional/flakes/follow-paths.sh b/tests/functional/flakes/follow-paths.sh
index cd3f75693..e91ce87b1 100644
--- a/tests/functional/flakes/follow-paths.sh
+++ b/tests/functional/flakes/follow-paths.sh
@@ -290,3 +290,20 @@ EOF
nix flake update --flake $flakeFollowsA
[[ $(jq -c .nodes.B.inputs.D $flakeFollowsA/flake.lock) = '["B","C","D"]' ]]
+
+cat <<EOF > $flakeFollowsA/flake.nix
+{
+ inputs.B.url = "path:$flakeFollowsB";
+ inputs.C.url = "path:$flakeFollowsC";
+ inputs.B.inputs.C.inputs.E.follows = "C";
+ outputs = _: {};
+}
+EOF
+cat <<EOF > $flakeFollowsB/flake.nix
+{
+ inputs.C.url = "path:$flakeFollowsC";
+ outputs = _: {};
+}
+EOF
+
+nix flake update --flake $flakeFollowsA 2>&1 | grepQuiet "warning: input 'B/C' has an override for a non-existent input 'E'"