[bug#34482,2/3] gnu: Add cxxtest.

Message ID 20190215122624.5269-1-kkebreau@posteo.net
State Accepted
Commit 8e91cecd7d56b56ae18498996b4f462add77fb60
Headers show
Series [bug#34482,1/3] gnu: Add sdl2-gfx. | expand

Checks

Context Check Description
cbaines/applying patch success Successfully applied

Commit Message

Kei Kebreau Feb. 15, 2019, 12:26 p.m. UTC
* gnu/packages/check.scm (cxxtest): New variable.
---
 gnu/packages/check.scm | 47 +++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 46 insertions(+), 1 deletion(-)

Patch

diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index d689c96648..6f4ba579eb 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -22,7 +22,7 @@ 
 ;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
 ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
-;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
+;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
 ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
 ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
@@ -324,6 +324,51 @@  normally do not detect.  The goal is to detect only real errors in the code
 (i.e. have zero false positives).")
     (license license:gpl3+)))
 
+(define-public cxxtest
+  (package
+    (name "cxxtest")
+    (version "4.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/cxxtest/cxxtest/"
+                                  version "/cxxtest-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1n7pbj4z9ivx005hqvivj9ddhq8awynzg6jishfbypf6j7ply58w"))))
+    (build-system python-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'chdir-to-source
+           (lambda _
+             (chdir "python")
+             #t))
+         (add-after 'install 'install-headers
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (include-dir (string-append out "/include/cxxtest")))
+               (for-each (lambda (header-file)
+                           (install-file header-file include-dir))
+                         (find-files "../cxxtest"))
+               #t)))
+         (add-after 'install 'install-doc
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (doc-dir (string-append out "/share/doc/cxxtest")))
+               (install-file "../README" doc-dir)
+               (install-file "../doc/guide.txt" doc-dir)
+               (copy-recursively "../sample" (string-append doc-dir "/sample"))
+               #t))))))
+    (propagated-inputs
+     `(("python-ply" ,python-ply)))
+    (home-page "https://cxxtest.com/")
+    (synopsis "Unit testing framework for C++")
+    (description "CxxTest is a unit testing framework for C++ that is similar
+in spirit to JUnit, CppUnit, and xUnit.  CxxTest does not require precompiling
+a CxxTest testing library, it employs no advanced features of C++ (e.g. RTTI)
+and it supports a very flexible form of test discovery.")
+    (license license:lgpl3+)))
+
 (define-public go-gopkg.in-check.v1
   (let ((commit "20d25e2804050c1cd24a7eea1e7a6447dd0e74ec")
         (revision "0"))