aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-01-07 10:00:50 +0100
committerLudovic Courtès <ludo@gnu.org>2021-01-19 17:45:39 +0100
commit9ab817b2a4601b4a6755983590ed7d93ebdc8d09 (patch)
tree15bab050a0fa6e6719a43aed8e08fbb85f022bf5 /tests
parent30c164e3fda4b7585acc1beacc653645a8186552 (diff)
downloadguix-9ab817b2a4601b4a6755983590ed7d93ebdc8d09.tar
guix-9ab817b2a4601b4a6755983590ed7d93ebdc8d09.tar.gz
transformations: Add '--with-latest'.
* guix/upstream.scm (upstream-source-compiler): New procedure. (%updaters): Set! it. * guix/transformations.scm (transform-package-latest): New procedure. (%transformations): Add 'with-latest'. (%transformation-options, show-transformation-options-help/detailed): Add '--with-latest'. * tests/transformations.scm ("options->transformation, with-latest"): New test. * doc/guix.texi (Package Transformation Options): Document it.
Diffstat (limited to 'tests')
-rw-r--r--tests/transformations.scm19
1 files changed, 18 insertions, 1 deletions
diff --git a/tests/transformations.scm b/tests/transformations.scm
index 9053deba41..7877029486 100644
--- a/tests/transformations.scm
+++ b/tests/transformations.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016, 2017, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016, 2017, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,6 +30,7 @@
#:use-module (guix ui)
#:use-module (guix utils)
#:use-module (guix git)
+ #:use-module (guix upstream)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages busybox)
@@ -396,6 +397,22 @@
(map local-file-file
(origin-patches (package-source dep)))))))))
+(test-equal "options->transformation, with-latest"
+ "42.0"
+ (mock ((guix upstream) %updaters
+ (delay (list (upstream-updater
+ (name 'dummy)
+ (pred (const #t))
+ (description "")
+ (latest (const (upstream-source
+ (package "foo")
+ (version "42.0")
+ (urls '("http://example.org")))))))))
+ (let* ((p (dummy-package "foo" (version "1.0")))
+ (t (options->transformation
+ `((with-latest . "foo")))))
+ (package-version (t p)))))
+
(test-end)
;;; Local Variables: