summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/import/gem.scm40
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/import/gem.scm b/tests/import/gem.scm
index beee1508756..dfa33d40366 100644
--- a/tests/import/gem.scm
+++ b/tests/import/gem.scm
@@ -112,6 +112,19 @@
112 \"licenses\": [\"MIT\"] 112 \"licenses\": [\"MIT\"]
113}") 113}")
114 114
115(define test-no-homepage-json
116 "{
117 \"name\": \"no-homepage\",
118 \"version\": \"1.0.0\",
119 \"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\",
120 \"info\": \"A gem with no homepage\",
121 \"homepage_uri\": null,
122 \"dependencies\": {
123 \"runtime\": []
124 },
125 \"licenses\": [\"MIT\"]
126}")
127
115(test-begin "gem") 128(test-begin "gem")
116 129
117(test-assert "gem->guix-package" 130(test-assert "gem->guix-package"
@@ -306,4 +319,31 @@
306 (list (upstream-source-urls source) 319 (list (upstream-source-urls source)
307 (upstream-source-inputs source))))) 320 (upstream-source-inputs source)))))
308 321
322(test-assert "gem->guix-package, bald homepage_uri"
323 (mock ((guix http-client) http-fetch
324 (lambda (url . rest)
325 (match url
326 ("https://rubygems.org/api/v1/gems/no-homepage.json"
327 (values (open-input-string test-no-homepage-json)
328 (string-length test-no-homepage-json)))
329 (_ (error "Unexpected URL: " url)))))
330 (match (gem->guix-package "no-homepage")
331 (`(package
332 (name "ruby-no-homepage")
333 (version "1.0.0")
334 (source (origin
335 (method url-fetch)
336 (uri (rubygems-uri "no-homepage" version))
337 (sha256
338 (base32
339 "1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
340 (build-system ruby-build-system)
341 (synopsis "A gem with no homepage")
342 (description "This package provides a gem with no homepage.")
343 (home-page #f)
344 (license license:expat))
345 #t)
346 (x
347 (pk 'fail x #f)))))
348
309(test-end "gem") 349(test-end "gem")