* gnu/packages/ocaml.scm (ocaml-merlin): Added tests --- gnu/packages/ocaml.scm | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 07fcf92ae..0b33c257a 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -66,6 +66,7 @@ #:use-module (gnu packages version-control) #:use-module (gnu packages virtualization) #:use-module (gnu packages web-browsers) + #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix build-system dune) @@ -4785,6 +4786,11 @@ format}. @code{craml} is released as a single binary (called @code{craml}).") (url "https://github.com/ocaml/merlin.git") (commit (string-append "v" version)))) (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet '(begin + ;; fix a dune file calling missing dependencies + (substitute* "tests/locate/partial-cmt/dune" + (("a.ml a.mli") "")))) (sha256 (base32 "15ssgmwdxylbwhld9p1cq8x6kadxyhll5bfyf11dddj6cldna3hb")))) @@ -4794,9 +4800,22 @@ format}. @code{craml} is released as a single binary (called @code{craml}).") ("ocaml-yojson" ,ocaml-yojson) ("ocaml-easy-format" ,ocaml-easy-format))) (native-inputs - `(("ocaml-findlib" ,ocaml-findlib))) + `(("ocaml-findlib" ,ocaml-findlib) + ("ocaml-craml" ,ocaml-craml) + ("jq" ,jq))) (arguments - '(#:tests? #f)) ;; Errors in tests in version 3.2.2 + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'remove-failing + (lambda _ + (delete-file-recursively "tests/warnings/") + (delete-file-recursively ;fail because of shebang patching + "tests/locate/context-detection/") + #t)) + (replace 'check + (lambda _ + (invoke "make" "test") + #t))))) (synopsis "Context sensitive completion for OCaml in Vim and Emacs") (description "Merlin is an editor service that provides modern IDE features for OCaml. Emacs and Vim support is provided out-of-the-box. -- 2.20.1