Merge branch 'master' into staging
[jackhill/guix/guix.git] / tests / opam.scm
index 11984b5..b5f02f8 100644 (file)
@@ -1,5 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
+;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -55,6 +57,7 @@ depends: [
 synopsis: \"Some example package\"
 description: \"\"\"
 This package is just an example.\"\"\"
+license: \"BSD-3-Clause\"
 url {
   src: \"https://example.org/foo-1.0.0.tar.gz\"
   checksum: \"md5=74c6e897658e820006106f45f736381f\"
@@ -69,26 +72,26 @@ url {
 (test-begin "opam")
 
 (test-assert "opam->guix-package"
-  (mock ((guix import utils) url-fetch
-         (lambda (url file-name)
-           (match url
-             ("https://example.org/foo-1.0.0.tar.gz"
-              (begin
-                (mkdir-p "foo-1.0.0")
-                (system* "tar" "czvf" file-name "foo-1.0.0/")
-                (delete-file-recursively "foo-1.0.0")
-                (set! test-source-hash
-                  (call-with-input-file file-name port-sha256))))
-             (_ (error "Unexpected URL: " url)))))
-        (mock ((guix import opam) get-opam-repository
-               (const test-repo))
+  (mock ((guix import opam) get-opam-repository
+         (const test-repo))
+        (mock ((guix import utils) url-fetch
+               (lambda (url file-name)
+                 (match url
+                   ("https://example.org/foo-1.0.0.tar.gz"
+                    (begin
+                      (mkdir-p "foo-1.0.0")
+                      (system* "tar" "czvf" file-name "foo-1.0.0/")
+                      (delete-file-recursively "foo-1.0.0")
+                      (set! test-source-hash
+                            (call-with-input-file file-name port-sha256))))
+                   (_ (error "Unexpected URL: " url)))))
               (let ((my-package (string-append test-repo
                                                "/packages/foo/foo.1.0.0")))
                 (mkdir-p my-package)
                 (with-output-to-file (string-append my-package "/opam")
                   (lambda _
                     (format #t "~a" test-opam-file))))
-              (match (opam->guix-package "foo" #:repo test-repo)
+              (match (opam->guix-package "foo" #:repo (list test-repo))
                 (('package
                    ('name "ocaml-foo")
                    ('version "1.0.0")
@@ -99,17 +102,13 @@ url {
                                ('base32
                                 (? string? hash)))))
                    ('build-system 'ocaml-build-system)
-                   ('propagated-inputs
-                    ('quasiquote
-                     (("ocaml-zarith" ('unquote 'ocaml-zarith)))))
+                   ('propagated-inputs ('list 'ocaml-zarith))
                    ('native-inputs
-                    ('quasiquote
-                     (("ocaml-alcotest" ('unquote 'ocaml-alcotest))
-                      ("ocamlbuild" ('unquote 'ocamlbuild)))))
+                    ('list 'ocaml-alcotest 'ocamlbuild))
                    ('home-page "https://example.org/")
                    ('synopsis "Some example package")
                    ('description "This package is just an example.")
-                   ('license #f))
+                   ('license 'license:bsd-3))
                  (string=? (bytevector->nix-base32-string
                             test-source-hash)
                            hash))