mirror of
git://git.savannah.gnu.org/guix/data-service.git
synced 2023-12-14 03:23:03 +01:00
59 lines
1.8 KiB
Scheme
59 lines
1.8 KiB
Scheme
(define-module (tests model-lint-warning-message)
|
|
#:use-module (srfi srfi-64)
|
|
#:use-module (ice-9 match)
|
|
#:use-module (guix-data-service database)
|
|
#:use-module (guix-data-service model lint-warning-message))
|
|
|
|
(test-begin "test-model-lint-warning-message")
|
|
|
|
(define data
|
|
'(("en" . "Test message")
|
|
("es" . "Test message in Spanish")))
|
|
|
|
(with-postgresql-connection
|
|
"test-model-lint-checker"
|
|
(lambda (conn)
|
|
(check-test-database! conn)
|
|
|
|
(test-assert "single insert"
|
|
(with-postgresql-transaction
|
|
conn
|
|
(lambda (conn)
|
|
(match (lint-warning-message-data->lint-warning-message-ids conn data)
|
|
(((? number? id1) (? number? id2))
|
|
#t)))
|
|
#:always-rollback? #t))
|
|
|
|
(test-assert "double insert"
|
|
(with-postgresql-transaction
|
|
conn
|
|
(lambda (conn)
|
|
(match (lint-warning-message-data->lint-warning-message-ids conn data)
|
|
(((? number? id1) (? number? id2))
|
|
(match (lint-warning-message-data->lint-warning-message-ids conn data)
|
|
(((? number? second-id1) (? number? second-id2))
|
|
(and (eq? id1 second-id1)
|
|
(eq? id2 second-id2)))))))
|
|
#:always-rollback? #t))
|
|
|
|
(test-assert "single set insert"
|
|
(with-postgresql-transaction
|
|
conn
|
|
(lambda (conn)
|
|
(match (lint-warning-message-data->lint-warning-message-set-id conn data)
|
|
((? number? id1)
|
|
#t)))
|
|
#:always-rollback? #t))
|
|
|
|
(test-assert "double set insert"
|
|
(with-postgresql-transaction
|
|
conn
|
|
(lambda (conn)
|
|
(match (lint-warning-message-data->lint-warning-message-set-id conn data)
|
|
((? number? id)
|
|
(match (lint-warning-message-data->lint-warning-message-set-id conn data)
|
|
((? number? second-id)
|
|
(eq? id second-id))))))
|
|
#:always-rollback? #t))))
|
|
|
|
(test-end)
|