summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2017-03-29 20:23:33 -0500
committerEric Bavier <bavier@member.fsf.org>2017-03-29 20:51:06 -0500
commitbf5b6fb294331f108cdb5b2555dd357f69321821 (patch)
tree413b2ac4efd7032472c36d61cd008e6eab7601aa
parent6fd52309b8f52c9bb59fccffac53e029ce94b698 (diff)
gnu: thefuck: Upgrade to 3.15 and enable tests.
* gnu/packages/patches/thefuck-test-environ.patch: New patch. * gnu/packages/admin.scm (thefuck): Upgrade to 3.15. [source]: Use patch. [arguments]: Remove '#:tests? #f'. Move 'check' phase after 'install'. * gnu/local.mk (dist_patch_DATA): Add patch.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/admin.scm27
-rw-r--r--gnu/packages/patches/thefuck-test-environ.patch14
3 files changed, 29 insertions, 13 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 063974b75d..b143778504 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -948,6 +948,7 @@ dist_patch_DATA = \
%D%/packages/patches/texlive-texmf-CVE-2016-10243.patch \
%D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \
+ %D%/packages/patches/thefuck-test-environ.patch \
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
%D%/packages/patches/tinyxml-use-stl.patch \
%D%/packages/patches/tipp10-fix-compiling.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 9dd664ef6b..8c8d1bc5f2 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -2,7 +2,7 @@
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
@@ -1688,7 +1688,7 @@ throughput (in the same interval).")
(define-public thefuck
(package
(name "thefuck")
- (version "3.11")
+ (version "3.15")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
@@ -1696,19 +1696,20 @@ throughput (in the same interval).")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "04q2cn8c83f6z6wn1scla1ilrpi5ssjc64987hvmwfvwvb82bvkp"))))
+ "1vxas21h5mf41cb6y7f7x07858ags7qg45lkf74rc0slqbic3l1h"))
+ (patches (search-patches "thefuck-test-environ.patch"))))
(build-system python-build-system)
(arguments
- '(#:tests? #f))
- ;; FIXME: 10 test failures. Some require newer pytest (> 2.9.2).
- ;; Others need more work. Un-comment the below to run the tests.
- ;; #:phases
- ;; (modify-phases %standard-phases
- ;; (replace 'check
- ;; (lambda _
- ;; ;; Some tests need write access to $HOME.
- ;; (setenv "HOME" "/tmp")
- ;; (zero? (system* "py.test" "-v")))))))
+ '(#:phases
+ (modify-phases %standard-phases
+ (delete 'check)
+ (add-after 'install 'check
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ ;; Tests look for installed package
+ (add-installed-pythonpath inputs outputs)
+ ;; Some tests need write access to $HOME.
+ (setenv "HOME" "/tmp")
+ (zero? (system* "py.test" "-v")))))))
(propagated-inputs
`(("python-colorama" ,python-colorama)
("python-decorator" ,python-decorator)
diff --git a/gnu/packages/patches/thefuck-test-environ.patch b/gnu/packages/patches/thefuck-test-environ.patch
new file mode 100644
index 0000000000..0c602a38c4
--- /dev/null
+++ b/gnu/packages/patches/thefuck-test-environ.patch
@@ -0,0 +1,14 @@
+Retain environment setting of "HOME" for tests that need os.path.expanduser()
+to return a readable directory in the build chroot.
+
+--- thefuck-3.15/tests/test_conf.py
++++ thefuck-3.15/tests/test_conf.py
+@@ -12,7 +12,7 @@
+
+ @pytest.fixture
+ def environ(monkeypatch):
+- data = {}
++ data = {"HOME": os.environ.get("HOME")}
+ monkeypatch.setattr('thefuck.conf.os.environ', data)
+ return data
+