summary refs log tree commit diff
path: root/pkgs/development/tools/misc/clojure-lsp
diff options
context:
space:
mode:
authorThiago Kenji Okada <thiagokokada@gmail.com>2021-02-04 00:56:20 -0300
committerThiago Kenji Okada <thiagokokada@gmail.com>2021-02-19 10:25:55 -0300
commitcd98c0e4baafaa8c3abd6701c8468c26d6683e49 (patch)
tree0e164a8fdc26837bf6f6d3adde156f189ea9bc65 /pkgs/development/tools/misc/clojure-lsp
parent3fa00685ce21fb1a4218d444d0862ebcb2b99706 (diff)
clojure-lsp: add tests
Diffstat (limited to 'pkgs/development/tools/misc/clojure-lsp')
-rw-r--r--pkgs/development/tools/misc/clojure-lsp/default.nix16
1 files changed, 13 insertions, 3 deletions
diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix
index b282deb6cd077..e8f36596efad0 100644
--- a/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, graalvm11-ce }:
+{ lib, stdenv, fetchurl, fetchFromGitHub, graalvm11-ce, babashka }:
 
 stdenv.mkDerivation rec {
   pname = "clojure-lsp";
@@ -9,6 +9,14 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-fLwubRwWa1fu37bdkaCr2uZK79z37wqPLToOb5BlegY=";
   };
 
+  # For tests
+  ghSrc = fetchFromGitHub {
+    owner = pname;
+    repo = pname;
+    rev = version;
+    sha256 = "1ydf8bgwvjp77wyhjqwzn7crpn5hxmq701czlkhpm5ablnxcwhn7";
+  };
+
   dontUnpack = true;
 
   buildInputs = [ graalvm11-ce ];
@@ -21,6 +29,7 @@ stdenv.mkDerivation rec {
           "-J-Dclojure.spec.skip-macros=true"
           "-H:+ReportExceptionStackTraces"
           "--enable-url-protocols=jar"
+          # TODO: Enable in GraalVM 21.0.0
           # "-H:+InlineBeforeAnalysis"
           "-H:Log=registerResource:"
           "--verbose"
@@ -49,8 +58,9 @@ stdenv.mkDerivation rec {
     install -Dm755 clojure-lsp $out/bin/clojure-lsp
   '';
 
-  installCheckPhase = ''
-    $out/bin/clojure-lsp --version
+  doCheck = true;
+  checkPhase = ''
+    ${babashka}/bin/bb ${ghSrc}/integration-test/run-all.clj ./clojure-lsp
   '';
 
   meta = with lib; {