diff options
Diffstat (limited to 'tests/model-license.scm')
-rw-r--r-- | tests/model-license.scm | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tests/model-license.scm b/tests/model-license.scm new file mode 100644 index 0000000..cdec491 --- /dev/null +++ b/tests/model-license.scm @@ -0,0 +1,42 @@ +(define-module (tests model-license) + #:use-module (srfi srfi-64) + #:use-module (guix utils) + #:use-module (guix tests) + #:use-module (guix-data-service database) + #:use-module (tests mock-inferior) + #:use-module (guix-data-service model license)) + +(test-begin "test-model-license") + +(mock + ((guix-data-service model license) + inferior-packages->license-data + (lambda (inf packages) + '((("License 1" + "https://gnu.org/licenses/test-1.html" + "https://example.com/why-license-1")) + (("License 1" + "https://gnu.org/licenses/test-1.html" + "https://example.com/why-license-1") + ("License 2" + "https://gnu.org/licenses/test-2.html" + "https://example.com/why-license-2"))))) + + (with-postgresql-connection + (lambda (conn) + (with-postgresql-transaction + conn + (lambda (conn) + (test-assert "works" + (inferior-packages->license-id-lists conn #f #f))) + #:always-rollback? #t) + + (with-postgresql-transaction + conn + (lambda (conn) + (test-equal "works repeatedly" + (inferior-packages->license-id-lists conn #f #f) + (inferior-packages->license-id-lists conn #f #f))) + #:always-rollback? #t)))) + +(test-end) |