guix-data-service/tests/model-git-commit.scm
Christopher Baines 64be52844e Partition the package_derivations_by_guix_revision_range table
And create a proper git_branches table in the process.

I'm hoping this will help with slow deletions from the
package_derivations_by_guix_revision_range table in the case where there are
lots of branches, since it'll separate the data for one branch from another.

These migrations will remove the existing data, so
rebuild-package-derivations-table will currently need manually running to
regenerate it.
2022-05-23 19:10:25 +01:00

52 lines
1.8 KiB
Scheme

(define-module (test-model-git-commit)
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-64)
#:use-module (guix-data-service database)
#:use-module (guix-data-service model git-repository)
#:use-module (guix-data-service model git-branch)
#:use-module (guix-data-service model git-commit))
(test-begin "test-model-git-commit")
(with-postgresql-connection
"test-module-git-commit"
(lambda (conn)
(check-test-database! conn)
(test-assert "insert-git-commit-entry works"
(with-postgresql-transaction
conn
(lambda (conn)
(let* ((url "test-url")
(git-repository-id
(git-repository-url->git-repository-id conn url))
(git-branch-id
(insert-git-branch-entry conn git-repository-id "master")))
(insert-git-commit-entry conn
git-branch-id
"test-commit"
(current-date)))
#t)
#:always-rollback? #t))
(test-assert "insert-git-commit-entry works twice"
(with-postgresql-transaction
conn
(lambda (conn)
(let* ((url "test-url")
(git-repository-id
(git-repository-url->git-repository-id conn url))
(git-branch-id
(insert-git-branch-entry conn git-repository-id "master")))
(insert-git-commit-entry conn
git-branch-id
"test-commit"
(current-date))
(insert-git-commit-entry conn
git-branch-id
"test-commit"
(current-date)))
#t)
#:always-rollback? #t))))
(test-end)