guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

03/07: gnu: beancount: Enable tests.


From: guix-commits
Subject: 03/07: gnu: beancount: Enable tests.
Date: Tue, 19 Mar 2024 05:48:09 -0400 (EDT)

sharlatan pushed a commit to branch master
in repository guix.

commit 5ee3f3cec4be77cd6e629ebf7417ea0c3125b505
Author: Sharlatan Hellseher <sharlatanus@gmail.com>
AuthorDate: Sun Mar 17 16:36:41 2024 +0000

    gnu: beancount: Enable tests.
    
    * gnu/packages/finance.scm (beancount) [source]: Swap to git checkout,
    containing all required test data files.
    [build-system]: Swap to pyproject-build-system.
    [arguments] <#:phases>: Add 'build-extensions phase.
    [propagated-inputs]: Add python-auth2client.
    [native-inputs]: Add gnupg and python-pdfminer-six.
    
    Change-Id: Id0c725cae8cdc677ad0c3a0a75be6eea682eee05
---
 gnu/packages/finance.scm | 36 ++++++++++++++++++++++++++++--------
 1 file changed, 28 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 9d9ba26b9e..cbc4027ca7 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -37,6 +37,7 @@
 ;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
 ;;; Copyright © 2023 Attila Lendvai <attila@lendvai.name>
 ;;; Copyright © 2024 Saku Laesvuori <saku@laesvuori.fi>
+;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1969,22 +1970,40 @@ that allows you to run services and through them access 
the Bitcoin Cash network
     (version "2.3.6")
     (source
      (origin
-       (method url-fetch)
-       (uri (pypi-uri "beancount" version))
+       (method git-fetch) ; no test data files in PyPI archive
+       (uri (git-reference
+             (url "https://github.com/beancount/beancount";)
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
-        (base32 "0nj7sdh7wxc0hv8wxwqhw9v1zgx1sn4w92368ci2wzdmssz967w0"))
-       (patches (search-patches "beancount-disable-googleapis-fonts.patch"))))
-    (build-system python-build-system)
+        (base32 "1slxsjw29cyr2kbirdpijhpqspk55k38rpmk3zc02pr1wll62qsv"))
+       (patches (search-patches "beancount-disable-googleapis-fonts.patch"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            ;; Remove broken experiments.
+            (delete-file-recursively "experiments")
+            ;; Remove bundled packages.
+            (delete-file-recursively "third_party")))))
+    (build-system pyproject-build-system)
     (arguments
      (list
-      #:tests? #f  ; Says test is missing, not sure why
+      #:test-flags
+      #~(list "-k" (string-append
+                    ;; ModuleNotFoundError: No module named 'pytest'
+                    "not test_parse_stdin"
+                    ;; AssertionError: 5 not greater than 20
+                    " and not test_setup"))
       #:phases
       #~(modify-phases %standard-phases
           (add-after 'unpack 'relax-requirements
             (lambda _
               (substitute* "setup.py"
                 ;; Use compatible fork, and do not fail during sanity check.
-                (("\"pdfminer2\",") "")))))))
+                (("\"pdfminer2\",") ""))))
+          (add-before 'check 'build-extensions
+            (lambda _
+              (invoke "python" "setup.py" "build_ext" "--inplace"))))))
     (propagated-inputs
      (list python-beautifulsoup4
            python-bottle
@@ -1994,10 +2013,11 @@ that allows you to run services and through them access 
the Bitcoin Cash network
            python-google-auth-oauthlib
            python-lxml
            python-magic
+           python-oauth2client
            python-ply
            python-requests))
     (native-inputs
-     (list python-pytest))
+     (list gnupg python-pdfminer-six python-pytest))
     (home-page "https://beancount.github.io/";)
     (synopsis "Command-line double-entry accounting tool")
     (description



reply via email to

[Prev in Thread] Current Thread [Next in Thread]