From e3801126a9566bc89c3746a54128609ad6eff1fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Tue, 15 Mar 2022 15:17:04 +0100 Subject: [PATCH] tests: Exercise 'modify-inputs' with a 'replace' clause. * tests/packages.scm ("modify-inputs, replace") ("modify-inputs, replace, change output"): New tests. --- tests/packages.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/tests/packages.scm b/tests/packages.scm index 02bdba5f98..2cb90d3145 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1956,6 +1956,32 @@ (dummy-package "a" (arguments (this-package-native-input "hello"))))) +(test-eq "modify-inputs, replace" + coreutils + ;; Replace an input; notice that the label in unchanged. + (let* ((p1 (dummy-package "p" + (inputs (list hello)))) + (p2 (package + (inherit p1) + (version "1") + (inputs (modify-inputs (package-inputs p1) + (replace "hello" coreutils)))))) + (lookup-package-input p2 "hello"))) + +(test-eq "modify-inputs, replace, change output" + guile-3.0 + ;; Replace an input and choose a different output. + (let* ((p1 (dummy-package "p" + (inputs (list `(,coreutils "debug"))))) + (p2 (package + (inherit p1) + (version "1") + (inputs (modify-inputs (package-inputs p1) + (replace "coreutils" `(,guile-3.0 "out"))))))) + (match (package-inputs p2) + ((("coreutils" input "out")) + input)))) + (test-end "packages") ;;; Local Variables: