summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2023-06-09 12:30:45 +0200
committerLudovic Courtès <ludo@gnu.org>2023-06-09 14:19:14 +0200
commit53bf9fba0c9542a46702bb30251f5796da371e64 (patch)
tree117567768eeb9a2b24ecd4ada93bac4de65adced
parentf69d14d31af8325807d8529fccd3f0b6fd86e342 (diff)
downloadguix-53bf9fba0c9542a46702bb30251f5796da371e64.tar.gz
tests: Ensure 'elpa' test does not access the network.
Previously it would try to access the real elpa.gnu.org.  This would
succeed when network is available because "taxy-magit-section" is an
existing package.

* guix/import/elpa.scm (elpa-repository)
(package-from-elpa-repository?): Recognize 'gnu/http.
* tests/elpa.scm ("package-latest-release"): Use 'http' instead of
'https'.  Change "taxy-magit-section" to "fake-taxy-magit-section".
-rw-r--r--guix/import/elpa.scm6
-rw-r--r--tests/elpa.scm31
2 files changed, 20 insertions, 17 deletions
diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm
index e65cf6683b..d1855b3698 100644
--- a/guix/import/elpa.scm
+++ b/guix/import/elpa.scm
@@ -461,13 +461,15 @@ type '<elpa-package>'."
                       (and uri
                            (cond
                             ((string=? (uri-host uri) "elpa.gnu.org")
-                             'gnu)
+                             (if (eq? (uri-scheme uri) 'http)
+                                 'gnu/http        ;for testing
+                                 'gnu))
                             ((string=? (uri-host uri) "elpa.nongnu.org")
                              'nongnu)
                             (else #f))))))))
 
 (define (package-from-elpa-repository? package)
-  (member (elpa-repository package) '(gnu nongnu)))
+  (member (elpa-repository package) '(gnu gnu/http nongnu)))
 
 (define %elpa-updater
   ;; The ELPA updater.  We restrict it to packages hosted on elpa.gnu.org
diff --git a/tests/elpa.scm b/tests/elpa.scm
index f6d008cd09..f563b99df1 100644
--- a/tests/elpa.scm
+++ b/tests/elpa.scm
@@ -43,17 +43,17 @@
             [(11 88 6)
              nil "Integrated environment for *TeX*" tar
              ((:url . "http://www.gnu.org/software/auctex/"))])
-    (taxy-magit-section .
-		        [(0 12 2)
-		         ((emacs
-			   (26 3))
-		          (magit-section
-			   (3 2 1))
-		          (taxy
-			   (0 10)))
-		         "View Taxy structs in a Magit Section buffer" tar
-		         ((:url . "https://github.com/alphapapa/taxy.el")
-		          (:keywords "lisp"))])))
+    (fake-taxy-magit-section .
+		             [(0 12 2)
+		              ((emacs
+			        (26 3))
+		               (magit-section
+			        (3 2 1))
+		               (taxy
+			        (0 10)))
+		              "View Taxy structs in a Magit Section buffer" tar
+		              ((:url . "https://github.com/alphapapa/taxy.el")
+		               (:keywords "lisp"))])))
 
 
 (test-begin "elpa")
@@ -88,8 +88,8 @@
   (eval-test-with-elpa "auctex"))
 
 (test-equal "package-latest-release"
-  (list '("https://elpa.gnu.org/packages/taxy-magit-section-0.12.2.tar")
-        '("https://elpa.gnu.org/packages/taxy-magit-section-0.12.2.tar.sig")
+  (list '("http://elpa.gnu.org/packages/fake-taxy-magit-section-0.12.2.tar")
+        '("http://elpa.gnu.org/packages/fake-taxy-magit-section-0.12.2.tar.sig")
         (list (upstream-input
                (name "magit-section")
                (downstream-name "emacs-magit-section")
@@ -105,12 +105,13 @@
   (with-http-server `((200 ,(object->string elpa-mock-archive)))
     (parameterize ((current-http-proxy (%local-url)))
       (define source
+        ;; Note: Use 'http' URLs to the proxy is used.
         (package-latest-release
-         (dummy-package "emacs-taxy-magit-section"
+         (dummy-package "emacs-fake-taxy-magit-section"
                         (version "0.0.0")
                         (source (dummy-origin
                                  (method url-fetch)
-                                 (uri "https://elpa.gnu.org/xyz"))))
+                                 (uri "http://elpa.gnu.org/xyz"))))
          (list %elpa-updater)))
 
       (list (upstream-source-urls source)