about summary refs log tree commit diff
path: root/pkgs/development/libraries/gdcm
diff options
context:
space:
mode:
authorBen Darwin <bcdarwin@gmail.com>2023-04-26 09:54:59 -0400
committerBen Darwin <bcdarwin@gmail.com>2023-04-28 18:24:28 -0400
commit99dac9d094a9c8a14d8b2c3a35505e421ba0501a (patch)
tree8cb5f655e18abcd48f3707ca09852418f1f85377 /pkgs/development/libraries/gdcm
parent171987b2980d986732f0f710cf0e3361989f71c8 (diff)
gdcm: enable tests
Diffstat (limited to 'pkgs/development/libraries/gdcm')
-rw-r--r--pkgs/development/libraries/gdcm/default.nix23
1 files changed, 23 insertions, 0 deletions
diff --git a/pkgs/development/libraries/gdcm/default.nix b/pkgs/development/libraries/gdcm/default.nix
index c01910e3f39fd..d844def1f9bc1 100644
--- a/pkgs/development/libraries/gdcm/default.nix
+++ b/pkgs/development/libraries/gdcm/default.nix
@@ -26,6 +26,7 @@ stdenv.mkDerivation rec {
   cmakeFlags = [
     "-DGDCM_BUILD_APPLICATIONS=ON"
     "-DGDCM_BUILD_SHARED_LIBS=ON"
+    "-DGDCM_BUILD_TESTING=ON"
     # hack around usual "`RUNTIME_DESTINATION` must not be an absolute path" issue:
     "-DCMAKE_INSTALL_LIBDIR=lib"
     "-DCMAKE_INSTALL_BINDIR=bin"
@@ -47,6 +48,28 @@ stdenv.mkDerivation rec {
     libiconv
   ] ++ lib.optionals enablePython [ swig python ];
 
+  disabledTests = [
+    # require networking:
+    "TestEcho"
+    "TestFind"
+    "gdcmscu-echo-dicomserver"
+    "gdcmscu-find-dicomserver"
+    # seemingly ought to be be disabled when the test data submodule is not present:
+    "TestvtkGDCMImageReader2_3"
+    "TestSCUValidation"
+    # errors because 3 classes not wrapped:
+    "TestWrapPython"
+  ];
+
+  checkPhase = ''
+    runHook preCheck
+    ctest --exclude-regex '^(${lib.concatStringsSep "|" disabledTests})$'
+    runHook postCheck
+  '';
+  doCheck = true;
+  # note that when the test data is available to the build via `fetchSubmodules = true`,
+  # a number of additional but much slower tests are enabled
+
   meta = with lib; {
     description = "The grassroots cross-platform DICOM implementation";
     longDescription = ''