diff options
| author | Nicolas Graves <ngraves@ngraves.fr> | 2025-12-22 22:21:32 +0100 |
|---|---|---|
| committer | Sharlatan Hellseher <sharlatanus@gmail.com> | 2025-12-27 19:59:51 +0000 |
| commit | 9da35d740981355722ef8e59ffe904f24261f5be (patch) | |
| tree | 69d346c825a2ef1787db800079110f5ae66ffc1e /gnu/packages/databases.scm | |
| parent | ff3c2127e69a6fac6f133d43a8c906fc67a5f38b (diff) | |
gnu: python-psycopg2: Run tests and migrate to pyproject.
* gnu/packages/databases.scm (python-psycopg2)
[build-system]: Switch to pyproject-build-system.
[arguments]<#:test-flags, #:phases>: Set them to run tests.
[native-inputs]: Add postgresql, tzdata-for-tests, python-pytest,
python-setuptools
Change-Id: I51b356a4e2d56f95aeff53f4a7a4b9c600d9744c
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages/databases.scm')
| -rw-r--r-- | gnu/packages/databases.scm | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 57d23861c32..0d0d218da33 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -4709,11 +4709,36 @@ libraries with SQLALchemy.") (uri (pypi-uri "psycopg2" version)) (sha256 (base32 "04chl9f7v7k1zssa40pmk06jvpyqiss2lpjq50dq69nqix0mhlgi")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments - ;; Tests would require a postgresql database "psycopg2_test" - ;; and a running postgresql database management service. - '(#:tests? #f)) ; TODO re-enable after providing a test-db. + (list + #:test-flags + #~(list "--deselect=tests/test_ipaddress.py::NetworkingTestCase::\ +test_cidr_adapt" + "--deselect=tests/test_ipaddress.py::NetworkingTestCase::\ +test_inet_adapt") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'start-postgresql + (lambda* (#:key inputs tests? #:allow-other-keys) + (when tests? + (setenv "TZDIR" (search-input-directory inputs + "share/zoneinfo")) + (let ((dbdir (string-append (getcwd) "/../pgdir"))) + (setenv "PSYCOPG2_TESTDB_USER" "nixbld") + (setenv "PSYCOPG2_TESTDB_HOST" dbdir) + (invoke "initdb" "-D" dbdir) + (invoke "pg_ctl" "-D" dbdir + "-o" (string-append "-k " dbdir) + "-l" (string-append dbdir "/db.log") + "start") + (invoke "psql" "-h" dbdir "-d" "postgres" + "-c" "CREATE DATABASE psycopg2_test;")))))))) + (native-inputs + (list postgresql + python-pytest + python-setuptools + tzdata-for-tests)) (inputs (list postgresql)) ; libpq (home-page "https://www.psycopg.org/") |
