summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2018-01-25 02:11:14 +0100
committerTobias Geerinckx-Rice <me@tobias.gr>2018-01-26 00:09:19 +0100
commit33ecc7a4d1144db1acc331bf16819d5cfe990cc9 (patch)
tree250b5bd0869c4a23c09cd33dcb73ca96651f208e /gnu
parent218b94f3b8c5a01cd348b125c8d8dcd66225a220 (diff)
downloadguix-33ecc7a4d1144db1acc331bf16819d5cfe990cc9.tar.gz
gnu: reposurgeon: Run the test suite.
* gnu/packages/version-control.scm (reposurgeon)[arguments]: Run tests.
Add #:make-flags and extend the ‘patch-inputs’ phase to find echo.
Add new ‘set-up-test-environment’ phase.
[native-inputs]: Add cvs, git, mercurial, and subversion.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/version-control.scm26
1 files changed, 20 insertions, 6 deletions
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index ded181e8ab..a8b06b9ab2 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -1330,9 +1330,9 @@ any project with more than one developer, is one of Aegis's major functions.")
                         "reposurgeon-add-missing-docbook-files.patch"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f                      ;no test suite distributed
-       #:make-flags
-       (list (string-append "target=" (assoc-ref %outputs "out")))
+     `(#:make-flags
+       (list "ECHO=echo"
+             (string-append "target=" (assoc-ref %outputs "out")))
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'patch-inputs
@@ -1341,8 +1341,10 @@ any project with more than one developer, is one of Aegis's major functions.")
                (substitute* "reposurgeon"
                  (("/usr/share/zoneinfo")
                   (string-append tzdata "/share/zoneinfo")))
+               (substitute* "test/svn-to-svn"
+                 (("/bin/echo") "echo"))
                #t)))
-         (delete 'configure)
+         (delete 'configure)            ; no configure script
          (add-before 'build 'fix-docbook
            (lambda* (#:key inputs #:allow-other-keys)
              (substitute* (find-files "." "\\.xml$")
@@ -1350,6 +1352,11 @@ any project with more than one developer, is one of Aegis's major functions.")
                 (string-append (assoc-ref inputs "docbook-xml")
                                "/xml/dtd/docbook/docbookx.dtd")))
              #t))
+         (add-before 'check 'set-up-test-environment
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((tzdata (assoc-ref inputs "tzdata")))
+               (setenv "TZDIR" (string-append tzdata "/share/zoneinfo"))
+               #t)))
          (add-after 'install 'install-emacs-data
            (lambda* (#:key outputs #:allow-other-keys)
              (install-file "reposurgeon-mode.el"
@@ -1359,11 +1366,18 @@ any project with more than one developer, is one of Aegis's major functions.")
      `(("python" ,python-wrapper)
        ("tzdata" ,tzdata)))
     (native-inputs
-     `(("asciidoc" ,asciidoc)
+     `( ;; For building documentation.
+       ("asciidoc" ,asciidoc)
        ("docbook-xml" ,docbook-xml)
        ("docbook-xsl" ,docbook-xsl)
        ("libxml2" ,libxml2)
-       ("xmlto" ,xmlto)))
+       ("xmlto" ,xmlto)
+
+       ;; For tests.
+       ("cvs" ,cvs)
+       ("git" ,git)
+       ("mercurial" ,mercurial)
+       ("subversion" ,subversion)))
     (home-page "http://www.catb.org/~esr/reposurgeon/")
     (synopsis "Edit version-control repository history")
     (description "Reposurgeon enables risky operations that version-control