From a71f07694c1b51ff2100a46ef3a54ff19e4632d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= Date: Sat, 7 Nov 2020 13:50:23 +0100 Subject: [PATCH] libtorch-bin: cleanup passthru test - Make passthru.tests an attrset. - Remove CMake VERBOSE option. - Remove spurious `cat CMakeLists.txt`. - Run the test as well. - Actually test some functionality. --- .../libraries/science/math/libtorch/bin.nix | 2 +- .../science/math/libtorch/test/default.nix | 8 ++------ .../science/math/libtorch/test/test.cpp | 17 +++++++++++++++-- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/pkgs/development/libraries/science/math/libtorch/bin.nix b/pkgs/development/libraries/science/math/libtorch/bin.nix index 33229bbefc8..6180c14c4d7 100644 --- a/pkgs/development/libraries/science/math/libtorch/bin.nix +++ b/pkgs/development/libraries/science/math/libtorch/bin.nix @@ -100,7 +100,7 @@ in stdenv.mkDerivation { outputs = [ "out" "dev" ]; - passthru.tests = callPackage ./test { }; + passthru.tests.cmake = callPackage ./test { }; meta = with stdenv.lib; { description = "C++ API of the PyTorch machine learning framework"; diff --git a/pkgs/development/libraries/science/math/libtorch/test/default.nix b/pkgs/development/libraries/science/math/libtorch/test/default.nix index d661ec28db9..e69807871f4 100644 --- a/pkgs/development/libraries/science/math/libtorch/test/default.nix +++ b/pkgs/development/libraries/science/math/libtorch/test/default.nix @@ -6,16 +6,12 @@ stdenv.mkDerivation { src = ./.; - postPatch = '' - cat CMakeLists.txt - ''; - - makeFlags = [ "VERBOSE=1" ]; - nativeBuildInputs = [ cmake ]; buildInputs = [ libtorch-bin ]; + doCheck = true; + installPhase = '' touch $out ''; diff --git a/pkgs/development/libraries/science/math/libtorch/test/test.cpp b/pkgs/development/libraries/science/math/libtorch/test/test.cpp index 5537724ce5f..ca238fba521 100644 --- a/pkgs/development/libraries/science/math/libtorch/test/test.cpp +++ b/pkgs/development/libraries/science/math/libtorch/test/test.cpp @@ -1,7 +1,20 @@ -#include +#undef NDEBUG +#include + #include +#include + int main() { torch::Tensor tensor = torch::eye(3); - std::cout << tensor << std::endl; + + float checkData[] = { + 1, 0, 0, + 0, 1, 0, + 0, 0, 1 + }; + + torch::Tensor check = torch::from_blob(checkData, {3, 3}); + + assert(tensor.allclose(check)); }