From ff3c2127e69a6fac6f133d43a8c906fc67a5f38b Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Dec 2025 21:46:20 +0100 Subject: [PATCH] gnu: python-sqlalchemy-utils: Run tests. * gnu/packages/databases.scm (python-sqlalchemy-utils)[arguments] <#:test-flags, #:phases>: Set them to run tests. [native-inputs]: Add postgresql, tzdata-for-tests. Change-Id: I0c5c0a170b42297044b4bfbe034db9e9e1d9352e Signed-off-by: Sharlatan Hellseher --- gnu/packages/databases.scm | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 58ccc452f0ffbb9dcddb1aa215e6d20fc11c9c02..57d23861c323787105ff8f3571a30d11196189a9 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -4357,15 +4357,41 @@ framework.") (base32 "0ny1p352p0dlgrf9fnmzj7ld1rga5zj698qpla1kdaliwwh6xawn")))) (build-system pyproject-build-system) (arguments - (list #:tests? #f)) ;FIXME: Many tests require a running database server. + (list + #:test-flags + ;; XXX: These tests require additional inputs. + #~(list "--deselect=tests/test_views.py::TestMySqlTrivialView" + "--deselect=tests/functions/test_database.py::\ +TestDatabasePostgresPg8000::test_create_and_drop" + "--deselect=tests/functions/test_database.py::\ +TestDatabasePostgresPsycoPG2CFFI::test_create_and_drop") + #: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 "SQLALCHEMY_UTILS_TEST_POSTGRESQL_USER" + "nixbld") + (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 sqlalchemy_utils_test;")))))))) (propagated-inputs (list python-six python-sqlalchemy)) (native-inputs - (list python-dateutil + (list postgresql + python-dateutil python-flexmock python-psycopg2 python-pytest python-pytz - python-setuptools)) + python-setuptools + tzdata-for-tests)) (home-page "https://github.com/kvesteri/sqlalchemy-utils") (synopsis "Various utility functions for SQLAlchemy") (description