From 4f7e2bb824539390cd2ed82191bd4726734a6d78 Mon Sep 17 00:00:00 2001 From: ralfulrich <ralf.ulrich@kit.edu> Date: Tue, 13 Apr 2021 09:48:46 +0200 Subject: [PATCH] fixed one unit test --- tests/modules/testUrQMD.cpp | 49 +++++++++++++++++++++++-------------- 1 file changed, 31 insertions(+), 18 deletions(-) diff --git a/tests/modules/testUrQMD.cpp b/tests/modules/testUrQMD.cpp index da788b797..0f9f4a862 100644 --- a/tests/modules/testUrQMD.cpp +++ b/tests/modules/testUrQMD.cpp @@ -164,29 +164,42 @@ TEST_CASE("UrQMD") { } SECTION("\"special\" projectile and target") { - auto [env, csPtr, nodePtr] = setup::testing::setup_environment(Code::Proton); - [[maybe_unused]] auto const& env_dummy = env; // against warnings - [[maybe_unused]] auto const& node_dummy = nodePtr; // against warnings + { + auto [env, csPtr, nodePtr] = setup::testing::setup_environment(Code::Proton); + [[maybe_unused]] auto const& env_dummy = env; // against warnings + [[maybe_unused]] auto const& node_dummy = nodePtr; // against warnings + + auto [stackPtr, secViewPtr] = setup::testing::setup_stack( + Code::PiPlus, 0, 0, 40_GeV, (setup::Environment::BaseNodeType* const)nodePtr, + *csPtr); + CHECK_THROWS(urqmd.doInteraction(*secViewPtr)); // Code::Proton not a valid target + } - auto [stackPtr, secViewPtr] = setup::testing::setup_stack( - Code::PiPlus, 0, 0, 40_GeV, (setup::Environment::BaseNodeType* const)nodePtr, - *csPtr); - CHECK(stackPtr->getEntries() == 1); - CHECK(secViewPtr->getEntries() == 0); + { + auto [env, csPtr, nodePtr] = setup::testing::setup_environment(Code::Oxygen); + [[maybe_unused]] auto const& env_dummy = env; // against warnings + [[maybe_unused]] auto const& node_dummy = nodePtr; // against warnings - // must be assigned to variable, cannot be used as rvalue?! - auto projectile = secViewPtr->getProjectile(); - auto const projectileMomentum = projectile.getMomentum(); + auto [stackPtr, secViewPtr] = setup::testing::setup_stack( + Code::PiPlus, 0, 0, 40_GeV, (setup::Environment::BaseNodeType* const)nodePtr, + *csPtr); + CHECK(stackPtr->getEntries() == 1); + CHECK(secViewPtr->getEntries() == 0); - urqmd.doInteraction(*secViewPtr); + // must be assigned to variable, cannot be used as rvalue?! + auto projectile = secViewPtr->getProjectile(); + auto const projectileMomentum = projectile.getMomentum(); - CHECK(sumCharge(*secViewPtr) == - get_charge_number(Code::PiPlus) + get_charge_number(Code::Oxygen)); + urqmd.doInteraction(*secViewPtr); - auto const secMomSum = - sumMomentum(*secViewPtr, projectileMomentum.getCoordinateSystem()); - CHECK((secMomSum - projectileMomentum).getNorm() / projectileMomentum.getNorm() == - Approx(0).margin(1e-2)); + CHECK(sumCharge(*secViewPtr) == + get_charge_number(Code::PiPlus) + get_charge_number(Code::Oxygen)); + + auto const secMomSum = + sumMomentum(*secViewPtr, projectileMomentum.getCoordinateSystem()); + CHECK((secMomSum - projectileMomentum).getNorm() / projectileMomentum.getNorm() == + Approx(0).margin(1e-2)); + } } SECTION("K0Long projectile") { -- GitLab