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".
This commit is contained in:
Ludovic Courtès 2023-06-09 12:30:45 +02:00
parent f69d14d31a
commit 53bf9fba0c
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
2 changed files with 20 additions and 17 deletions

View file

@ -461,13 +461,15 @@ (define elpa-repository
(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

View file

@ -43,17 +43,17 @@ (define elpa-mock-archive
[(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 @@ (define (eval-test-with-elpa pkg)
(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 @@ (define (eval-test-with-elpa pkg)
(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)