// Copyright (C) 2005-2006 Douglas Gregor // Use, modification and distribution is subject to the Boost Software // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // A test of the is_mpi_op functionality. #include #include #include #define BOOST_TEST_MODULE mpi_is_mpi_op_test #include using namespace boost::mpi; using namespace std; using boost::is_base_and_derived; BOOST_AUTO_TEST_CASE(mpi_basic_op) { boost::mpi::environment env; // Check each predefined MPI_Op type that we support directly. BOOST_TEST((is_mpi_op, float>::op() == MPI_MIN)); BOOST_TEST((is_mpi_op, double>::op() == MPI_SUM)); BOOST_TEST((is_mpi_op, long>::op() == MPI_PROD)); BOOST_TEST((is_mpi_op, int>::op() == MPI_LAND)); BOOST_TEST((is_mpi_op, int>::op() == MPI_BAND)); BOOST_TEST((is_mpi_op, int>::op() == MPI_LOR)); BOOST_TEST((is_mpi_op, int>::op() == MPI_BOR)); BOOST_TEST((is_mpi_op, int>::op() == MPI_LXOR)); BOOST_TEST((is_mpi_op, int>::op() == MPI_BXOR)); }