Loading src/UnitTests/Matrices/CMakeLists.txt +8 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,9 @@ IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( BinarySparseMatrixCopyTest BinarySparseMatrixCopyTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( BinarySparseMatrixCopyTest ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( SymmetricSparseMatrixTest_CSR SymmetricSparseMatrixTest_CSR.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( SymmetricSparseMatrixTest_CSR ${GTEST_BOTH_LIBRARIES} ) ELSE( BUILD_CUDA ) ADD_EXECUTABLE( DenseMatrixTest DenseMatrixTest.cpp ) TARGET_COMPILE_OPTIONS( DenseMatrixTest PRIVATE ${CXX_TESTS_FLAGS} ) Loading Loading @@ -86,6 +89,10 @@ ELSE( BUILD_CUDA ) TARGET_COMPILE_OPTIONS( BinarySparseMatrixCopyTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( BinarySparseMatrixCopyTest ${GTEST_BOTH_LIBRARIES} ) ADD_EXECUTABLE( SymmetricSparseMatrixTest_CSR SymmetricSparseMatrixTest_CSR.cpp ) TARGET_COMPILE_OPTIONS( SymmetricSparseMatrixTest_CSR PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( SymmetricSparseMatrixTest_CSR ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) ADD_TEST( DenseMatrixTest ${EXECUTABLE_OUTPUT_PATH}/DenseMatrixTest${CMAKE_EXECUTABLE_SUFFIX} ) Loading @@ -100,6 +107,7 @@ ADD_TEST( BinarySparseMatrixTest_CSR ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatri ADD_TEST( BinarySparseMatrixTest_Ellpack ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatrixTest_Ellpack${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( BinarySparseMatrixTest_SlicedEllpack ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatrixTest_SlicedEllpack${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( BinarySparseMatrixCopyTest ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatrixCopyTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( SymmetricSparseMatrixTest_CSR ${EXECUTABLE_OUTPUT_PATH}/SymmetricSparseMatrixTest_CSR${CMAKE_EXECUTABLE_SUFFIX} ) if( ${BUILD_MPI} ) if( BUILD_CUDA ) Loading src/UnitTests/Matrices/SymmetricSparseMatrixTest.h 0 → 100644 +114 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest.h - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #ifdef HAVE_GTEST #include <gtest/gtest.h> #include <iostream> #include <TNL/Matrices/SparseMatrix.h> #include "SparseMatrixTest.hpp" // test fixture for typed tests template< typename Matrix > class MatrixTest : public ::testing::Test { protected: using MatrixType = Matrix; }; TYPED_TEST_SUITE( MatrixTest, MatrixTypes); TYPED_TEST( MatrixTest, Constructors ) { using MatrixType = typename TestFixture::MatrixType; test_Constructors< MatrixType >(); } TYPED_TEST( MatrixTest, setDimensionsTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetDimensions< MatrixType >(); } TYPED_TEST( MatrixTest, setCompressedRowLengthsTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetCompressedRowLengths< MatrixType >(); } TYPED_TEST( MatrixTest, setLikeTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetLike< MatrixType, MatrixType >(); } TYPED_TEST( MatrixTest, resetTest ) { using MatrixType = typename TestFixture::MatrixType; test_Reset< MatrixType >(); } TYPED_TEST( MatrixTest, getRowTest ) { using MatrixType = typename TestFixture::MatrixType; test_GetRow< MatrixType >(); } TYPED_TEST( MatrixTest, setElementTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetElement< MatrixType >(); } TYPED_TEST( MatrixTest, addElementTest ) { using MatrixType = typename TestFixture::MatrixType; test_AddElement< MatrixType >(); } TYPED_TEST( MatrixTest, vectorProductTest ) { using MatrixType = typename TestFixture::MatrixType; test_VectorProduct< MatrixType >(); } TYPED_TEST( MatrixTest, rowsReduction ) { using MatrixType = typename TestFixture::MatrixType; test_RowsReduction< MatrixType >(); } TYPED_TEST( MatrixTest, saveAndLoadTest ) { using MatrixType = typename TestFixture::MatrixType; test_SaveAndLoad< MatrixType >( saveAndLoadTestFileName ); } TYPED_TEST( MatrixTest, printTest ) { using MatrixType = typename TestFixture::MatrixType; test_Print< MatrixType >(); } #endif #include "../main.h" src/UnitTests/Matrices/SymmetricSparseMatrixTest_CSR.cpp 0 → 100644 +11 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest_CSR.cpp - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #include "SymmetricSparseMatrixTest_CSR.h" src/UnitTests/Matrices/SymmetricSparseMatrixTest_CSR.cu 0 → 100644 +11 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest_CSR.cu - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #include "SymmetricSparseMatrixTest_CSR.h" src/UnitTests/Matrices/SymmetricSparseMatrixTest_CSR.h 0 → 100644 +61 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest_CSR.h - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #ifdef HAVE_GTEST #include <gtest/gtest.h> #include <TNL/Containers/Segments/CSR.h> #include <TNL/Matrices/SparseMatrix.h> // test fixture for typed tests template< typename Matrix > class MatrixTest : public ::testing::Test { protected: using MatrixType = Matrix; }; // types for which MatrixTest is instantiated using MatrixTypes = ::testing::Types < TNL::Matrices::SparseMatrix< int, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR > #ifdef HAVE_CUDA ,TNL::Matrices::SparseMatrix< int, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR > #endif // HAVE_CUDA >; const char* saveAndLoadTestFileName "test_SymmetricSparseMatrixTest_CSR_segments"; #include "SparseMatrixTest.h" #endif // HAVE_GTEST #include "../main.h" Loading
src/UnitTests/Matrices/CMakeLists.txt +8 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,9 @@ IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( BinarySparseMatrixCopyTest BinarySparseMatrixCopyTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( BinarySparseMatrixCopyTest ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( SymmetricSparseMatrixTest_CSR SymmetricSparseMatrixTest_CSR.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( SymmetricSparseMatrixTest_CSR ${GTEST_BOTH_LIBRARIES} ) ELSE( BUILD_CUDA ) ADD_EXECUTABLE( DenseMatrixTest DenseMatrixTest.cpp ) TARGET_COMPILE_OPTIONS( DenseMatrixTest PRIVATE ${CXX_TESTS_FLAGS} ) Loading Loading @@ -86,6 +89,10 @@ ELSE( BUILD_CUDA ) TARGET_COMPILE_OPTIONS( BinarySparseMatrixCopyTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( BinarySparseMatrixCopyTest ${GTEST_BOTH_LIBRARIES} ) ADD_EXECUTABLE( SymmetricSparseMatrixTest_CSR SymmetricSparseMatrixTest_CSR.cpp ) TARGET_COMPILE_OPTIONS( SymmetricSparseMatrixTest_CSR PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( SymmetricSparseMatrixTest_CSR ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) ADD_TEST( DenseMatrixTest ${EXECUTABLE_OUTPUT_PATH}/DenseMatrixTest${CMAKE_EXECUTABLE_SUFFIX} ) Loading @@ -100,6 +107,7 @@ ADD_TEST( BinarySparseMatrixTest_CSR ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatri ADD_TEST( BinarySparseMatrixTest_Ellpack ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatrixTest_Ellpack${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( BinarySparseMatrixTest_SlicedEllpack ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatrixTest_SlicedEllpack${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( BinarySparseMatrixCopyTest ${EXECUTABLE_OUTPUT_PATH}/BinarySparseMatrixCopyTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( SymmetricSparseMatrixTest_CSR ${EXECUTABLE_OUTPUT_PATH}/SymmetricSparseMatrixTest_CSR${CMAKE_EXECUTABLE_SUFFIX} ) if( ${BUILD_MPI} ) if( BUILD_CUDA ) Loading
src/UnitTests/Matrices/SymmetricSparseMatrixTest.h 0 → 100644 +114 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest.h - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #ifdef HAVE_GTEST #include <gtest/gtest.h> #include <iostream> #include <TNL/Matrices/SparseMatrix.h> #include "SparseMatrixTest.hpp" // test fixture for typed tests template< typename Matrix > class MatrixTest : public ::testing::Test { protected: using MatrixType = Matrix; }; TYPED_TEST_SUITE( MatrixTest, MatrixTypes); TYPED_TEST( MatrixTest, Constructors ) { using MatrixType = typename TestFixture::MatrixType; test_Constructors< MatrixType >(); } TYPED_TEST( MatrixTest, setDimensionsTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetDimensions< MatrixType >(); } TYPED_TEST( MatrixTest, setCompressedRowLengthsTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetCompressedRowLengths< MatrixType >(); } TYPED_TEST( MatrixTest, setLikeTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetLike< MatrixType, MatrixType >(); } TYPED_TEST( MatrixTest, resetTest ) { using MatrixType = typename TestFixture::MatrixType; test_Reset< MatrixType >(); } TYPED_TEST( MatrixTest, getRowTest ) { using MatrixType = typename TestFixture::MatrixType; test_GetRow< MatrixType >(); } TYPED_TEST( MatrixTest, setElementTest ) { using MatrixType = typename TestFixture::MatrixType; test_SetElement< MatrixType >(); } TYPED_TEST( MatrixTest, addElementTest ) { using MatrixType = typename TestFixture::MatrixType; test_AddElement< MatrixType >(); } TYPED_TEST( MatrixTest, vectorProductTest ) { using MatrixType = typename TestFixture::MatrixType; test_VectorProduct< MatrixType >(); } TYPED_TEST( MatrixTest, rowsReduction ) { using MatrixType = typename TestFixture::MatrixType; test_RowsReduction< MatrixType >(); } TYPED_TEST( MatrixTest, saveAndLoadTest ) { using MatrixType = typename TestFixture::MatrixType; test_SaveAndLoad< MatrixType >( saveAndLoadTestFileName ); } TYPED_TEST( MatrixTest, printTest ) { using MatrixType = typename TestFixture::MatrixType; test_Print< MatrixType >(); } #endif #include "../main.h"
src/UnitTests/Matrices/SymmetricSparseMatrixTest_CSR.cpp 0 → 100644 +11 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest_CSR.cpp - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #include "SymmetricSparseMatrixTest_CSR.h"
src/UnitTests/Matrices/SymmetricSparseMatrixTest_CSR.cu 0 → 100644 +11 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest_CSR.cu - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #include "SymmetricSparseMatrixTest_CSR.h"
src/UnitTests/Matrices/SymmetricSparseMatrixTest_CSR.h 0 → 100644 +61 −0 Original line number Diff line number Diff line /*************************************************************************** SymmetricSparseMatrixTest_CSR.h - description ------------------- begin : Feb 11, 2020 copyright : (C) 2020 by Tomas Oberhuber et al. email : tomas.oberhuber@fjfi.cvut.cz ***************************************************************************/ /* See Copyright Notice in tnl/Copyright */ #ifdef HAVE_GTEST #include <gtest/gtest.h> #include <TNL/Containers/Segments/CSR.h> #include <TNL/Matrices/SparseMatrix.h> // test fixture for typed tests template< typename Matrix > class MatrixTest : public ::testing::Test { protected: using MatrixType = Matrix; }; // types for which MatrixTest is instantiated using MatrixTypes = ::testing::Types < TNL::Matrices::SparseMatrix< int, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Host, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Host, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Host, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR > #ifdef HAVE_CUDA ,TNL::Matrices::SparseMatrix< int, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Cuda, short, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Cuda, int, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< int, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< long, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< float, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR >, TNL::Matrices::SparseMatrix< double, TNL::Devices::Cuda, long, TNL::Matrices::SymmetricMatrix, TNL::Containers::Segments::CSR > #endif // HAVE_CUDA >; const char* saveAndLoadTestFileName "test_SymmetricSparseMatrixTest_CSR_segments"; #include "SparseMatrixTest.h" #endif // HAVE_GTEST #include "../main.h"