#define CATCH_CONFIG_RUNNER
#include <catch.hpp>

#include <Kokkos_Core.hpp>
#include <Messenger.hpp>

#include <cstdlib>

int main( int argc, char* argv[] )
{
  parallel::Messenger::create(argc,  argv);
  Kokkos::initialize({4,-1,-1,true});

  if (parallel::commRank() != 0) {
    setenv("GCOV_PREFIX", "/dev/null", 1);
  }

  int result = Catch::Session().run( argc, argv );

  Kokkos::finalize();
  parallel::Messenger::destroy();

  return result;
}