diff options
-rw-r--r-- | guix-data-service/model/package-metadata.scm | 12 | ||||
-rw-r--r-- | tests/model-package.scm | 10 |
2 files changed, 17 insertions, 5 deletions
diff --git a/guix-data-service/model/package-metadata.scm b/guix-data-service/model/package-metadata.scm index e753dea..f2319fc 100644 --- a/guix-data-service/model/package-metadata.scm +++ b/guix-data-service/model/package-metadata.scm @@ -27,10 +27,12 @@ #:use-module (guix packages) #:use-module (guix i18n) #:use-module (guix inferior) + #:use-module (guix-data-service utils) #:use-module (guix-data-service model location) #:use-module (guix-data-service model utils) #:export (select-package-metadata-by-revision-name-and-version inferior-packages->package-metadata-ids + inferior-packages->translated-package-descriptions-and-synopsis package-description-and-synopsis-locale-options-guix-revision)) @@ -203,9 +205,9 @@ WHERE packages.id IN ( ";")) (define (inferior-packages->translated-package-descriptions-and-synopsis inferior - inferior-package-id) + inferior-package) - (define (translate inferior-package) + (define (translate inferior-package-id) `(let* ((package (hashv-ref %package-table ,inferior-package-id)) (source-locale "en_US.utf8") (source-synopsis @@ -260,7 +262,9 @@ WHERE packages.id IN ( (cons (cons source-locale source-synopsis) synopsis-by-locale)))) - (inferior-eval (translate inferior-package-id) inferior)) + (inferior-eval (translate (inferior-package-id inferior-package)) inferior)) + +(prevent-inlining-for-tests inferior-packages->translated-package-descriptions-and-synopsis) (define (package-synopsis-data->package-synopsis-ids conn synopsis-by-locale) @@ -366,7 +370,7 @@ WHERE packages.id IN ( (map (lambda (package license-set-id) (let ((translated-package-descriptions-and-synopsis (inferior-packages->translated-package-descriptions-and-synopsis - inferior (inferior-package-id package)))) + inferior package))) (list (non-empty-string-or-false (inferior-package-home-page package)) (location->location-id diff --git a/tests/model-package.scm b/tests/model-package.scm index 0f2c796..3999230 100644 --- a/tests/model-package.scm +++ b/tests/model-package.scm @@ -45,6 +45,12 @@ (list mock-inferior-package-foo mock-inferior-package-foo-2)) +(mock + ((guix-data-service model package-metadata) + inferior-packages->translated-package-descriptions-and-synopsis + (lambda (inferior inferior-package) + (cons `(("en_US.utf8" . "Fake synopsis")) + `(("en_US.utf8" . "Fake description"))))) (with-mock-inferior-packages (lambda () (use-modules (guix-data-service model package) @@ -63,6 +69,7 @@ (test-assert "inferior-packages->package-ids works once" (let ((package-metadata-ids (inferior-packages->package-metadata-ids conn + "" mock-inferior-packages (test-license-set-ids conn)))) (match (inferior-packages->package-ids @@ -78,6 +85,7 @@ (lambda (conn) (let ((package-metadata-ids (inferior-packages->package-metadata-ids conn + "" mock-inferior-packages (test-license-set-ids conn)))) (test-equal @@ -91,6 +99,6 @@ (zip (map mock-inferior-package-name mock-inferior-packages) (map mock-inferior-package-version mock-inferior-packages) package-metadata-ids))))) - #:always-rollback? #t))))) + #:always-rollback? #t)))))) (test-end) |