Address a few issues in the load new guix revision tests

This commit is contained in:
Christopher Baines 2022-03-02 18:23:26 +00:00
parent f86657915e
commit 3a90798567
2 changed files with 61 additions and 45 deletions

View file

@ -1402,6 +1402,8 @@ WHERE job_id = $1")
guix-revision-id)))))) guix-revision-id))))))
(prevent-inlining-for-tests load-channel-instances)
(define (load-new-guix-revision conn store git-repository-id commit) (define (load-new-guix-revision conn store git-repository-id commit)
(let* ((git-repository-fields (let* ((git-repository-fields
(select-git-repository conn git-repository-id)) (select-git-repository conn git-repository-id))

View file

@ -39,10 +39,10 @@
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
channel->derivations-by-system channel->derivations-by-system
(lambda (conn store channel fetch-with-authentication?) (lambda (conn store channel fetch-with-authentication?)
'((x86_64-linux '(("x86_64-linux"
. .
((manifest-entry-item . /gnu/store/foo.drv) ((manifest-entry-item . "/gnu/store/foo.drv")
(profile . /gnu/store/bar.drv)))))) (profile . "/gnu/store/bar.drv"))))))
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
@ -97,30 +97,37 @@
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
channel->derivations-by-system channel->derivations-by-system
(lambda (conn store channel fetch-with-authentication?) (lambda (conn store channel fetch-with-authentication?)
'(x86_64-linux '(("x86_64-linux"
. .
((manifest-entry-item . /gnu/store/foo.drv) ((manifest-entry-item . "/gnu/store/foo.drv")
(profile . /gnu/store/bar.drv))))) (profile . "/gnu/store/bar.drv"))))))
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
setup-logging load-channel-instances
(lambda (conn thunk) (lambda (git-repository-id commit
(thunk))) channel-derivations-by-system)
0))
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
channel-derivations-by-system->guix-store-item setup-logging
(lambda (store channel-derivations-by-system) (lambda (conn thunk)
#f)) (thunk)))
(match (enqueue-load-new-guix-revision-job (mock
conn ((guix-data-service jobs load-new-guix-revision)
(git-repository-url->git-repository-id conn "test-url") channel-derivations-by-system->guix-store-item
"test-commit" (lambda (store channel-derivations-by-system)
"test-source") #f))
((id)
(process-load-new-guix-revision-job id)))))))) (match (enqueue-load-new-guix-revision-job
conn
(git-repository-url->git-repository-id conn "test-url")
"test-commit"
"test-source")
((id)
(process-load-new-guix-revision-job id)))))))))
(exec-query conn "TRUNCATE load_new_guix_revision_jobs CASCADE") (exec-query conn "TRUNCATE load_new_guix_revision_jobs CASCADE")
@ -135,43 +142,50 @@
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
channel->derivations-by-system channel->derivations-by-system
(lambda (conn store channel) (lambda (conn store channel fetch-with-authentication?)
'(x86_64-linux '(("x86_64-linux"
. .
((manifest-entry-item . /gnu/store/foo.drv) ((manifest-entry-item . "/gnu/store/foo.drv")
(profile . /gnu/store/bar.drv))))) (profile . "/gnu/store/bar.drv"))))))
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
setup-logging load-channel-instances
(lambda (conn thunk) (lambda (git-repository-id commit
(thunk))) channel-derivations-by-system)
0))
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
channel-derivations-by-system->guix-store-item setup-logging
(lambda (store channel-derivations-by-system) (lambda (conn thunk)
"/gnu/store/test")) (thunk)))
(mock (mock
((guix-data-service jobs load-new-guix-revision) ((guix-data-service jobs load-new-guix-revision)
extract-information-from channel-derivations-by-system->guix-store-item
(lambda (conn store git-repository-id commit store-path) (lambda (store channel-derivations-by-system)
#f)) "/gnu/store/test"))
(mock (mock
((guix channels) ((guix-data-service jobs load-new-guix-revision)
channel-news-for-commit extract-information-from
(lambda (channel commit) (lambda (conn store git-repository-id commit store-path)
'())) #f))
(match (enqueue-load-new-guix-revision-job (mock
conn ((guix channels)
(git-repository-url->git-repository-id conn "test-url") channel-news-for-commit
"test-commit" (lambda (channel commit)
"test-source") '()))
((id)
(process-load-new-guix-revision-job id)))))))))) (match (enqueue-load-new-guix-revision-job
conn
(git-repository-url->git-repository-id conn "test-url")
"test-commit"
"test-source")
((id)
(process-load-new-guix-revision-job id)))))))))))
(exec-query conn "TRUNCATE load_new_guix_revision_jobs CASCADE") (exec-query conn "TRUNCATE load_new_guix_revision_jobs CASCADE")