summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--guix/derivations.scm2
-rw-r--r--tests/derivations.scm10
2 files changed, 11 insertions, 1 deletions
diff --git a/guix/derivations.scm b/guix/derivations.scm
index 4d11434e3a..a3a4eae6ac 100644
--- a/guix/derivations.scm
+++ b/guix/derivations.scm
@@ -121,7 +121,7 @@
 download with a fixed hash (aka. `fetchurl')."
   (match drv
     (($ <derivation>
-        (($ <derivation-output> _ (? symbol?) (? string?))))
+        (("out" . ($ <derivation-output> _ (? symbol?) (? bytevector?)))))
      #t)
     (_ #f)))
 
diff --git a/tests/derivations.scm b/tests/derivations.scm
index 3903a563a8..0b785029a7 100644
--- a/tests/derivations.scm
+++ b/tests/derivations.scm
@@ -159,6 +159,16 @@
          ;; the contents.
          (valid-path? %store (derivation->output-path drv)))))
 
+(test-assert "fixed-output-derivation?"
+  (let* ((builder    (add-text-to-store %store "my-fixed-builder.sh"
+                                        "echo -n hello > $out" '()))
+         (hash       (sha256 (string->utf8 "hello")))
+         (drv        (derivation %store "fixed"
+                                 %bash `(,builder)
+                                 #:inputs `((,builder))
+                                 #:hash hash #:hash-algo 'sha256)))
+    (fixed-output-derivation? drv)))
+
 (test-assert "fixed-output derivation"
   (let* ((builder    (add-text-to-store %store "my-fixed-builder.sh"
                                         "echo -n hello > $out" '()))