From be092ceae9c7a4ff0be7acea0bfe616b3bf649f8 Mon Sep 17 00:00:00 2001
From: ralfulrich <ralf.ulrich@kit.edu>
Date: Mon, 17 Sep 2018 00:16:27 +0200
Subject: [PATCH] a bit beeter and more complete tests for particle properties

---
 Framework/Particles/CMakeLists.txt   |  2 +-
 Framework/Particles/testParticles.cc | 29 +++++++++++++++++++++++++---
 2 files changed, 27 insertions(+), 4 deletions(-)

diff --git a/Framework/Particles/CMakeLists.txt b/Framework/Particles/CMakeLists.txt
index b7e2b58af..99b458bbe 100644
--- a/Framework/Particles/CMakeLists.txt
+++ b/Framework/Particles/CMakeLists.txt
@@ -35,7 +35,7 @@ CORSIKA_COPY_HEADERS_TO_NAMESPACE (CORSIKAparticles ${PARTICLE_NAMESPACE} ${PART
 # this is not needed for the build to succeed! .......
 add_custom_command (
   OUTPUT  ${CMAKE_CURRENT_SOURCE_DIR}/GeneratedParticleProperties.inc
-  COMMAND ${CMAKE_COMMAND} -E create_symlink ${PROJECT_BINARY_DIR}/include/corsika/GeneratedParticleProperties.inc ${CMAKE_CURRENT_SOURCE_DIR}/GeneratedParticleProperties.inc
+  COMMAND ${CMAKE_COMMAND} -E create_symlink ${PROJECT_BINARY_DIR}/include/corsika/particles/GeneratedParticleProperties.inc ${CMAKE_CURRENT_SOURCE_DIR}/GeneratedParticleProperties.inc
   COMMENT "Generate link in source-dir: ${CMAKE_CURRENT_SOURCE_DIR}/GeneratedParticleProperties.inc"
   )
 add_custom_target (SourceDirLink DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/GeneratedParticleProperties.inc)
diff --git a/Framework/Particles/testParticles.cc b/Framework/Particles/testParticles.cc
index a04f36515..12947cb32 100644
--- a/Framework/Particles/testParticles.cc
+++ b/Framework/Particles/testParticles.cc
@@ -9,16 +9,39 @@
 using namespace corsika::units;
 using namespace corsika::particles;
 
-TEST_CASE("Particles", "[Particles]") {
+TEST_CASE("ParticleProperties", "[Particles]") {
 
-  SECTION("Types") { REQUIRE(Electron::GetCode() == Code::Electron); }
+  SECTION("Types") {
+    REQUIRE(Electron::GetCode() == Code::Electron);
+    REQUIRE(Positron::GetCode() == Code::Positron);
+    REQUIRE(Proton::GetCode() == Code::Proton);
+    REQUIRE(Neutron::GetCode() == Code::Neutron);
+    REQUIRE(Gamma::GetCode() == Code::Gamma);
+    REQUIRE(PiPlus::GetCode() == Code::PiPlus);
+  }
 
-  SECTION("Data") {
+  SECTION("Masses") {
     REQUIRE(Electron::GetMass() / (511_keV / constants::cSquared) == Approx(1));
     REQUIRE(Electron::GetMass() / GetMass(Code::Electron) == Approx(1));
+  }
+
+  SECTION("Charges") {
     REQUIRE(Electron::GetCharge() / constants::e == Approx(-1));
     REQUIRE(Positron::GetCharge() / constants::e == Approx(+1));
     REQUIRE(GetElectricCharge(Positron::GetAntiParticle()) / constants::e == Approx(-1));
+  }
+
+  SECTION("Names") {
     REQUIRE(Electron::GetName() == "e-");
+    REQUIRE(PiMinus::GetName() == "pi-");
+  }
+
+  SECTION("PDG") {
+    REQUIRE(GetPDG(Code::PiPlus) == 211);
+    REQUIRE(GetPDG(Code::DPlus) == 411); 
+    REQUIRE(GetPDG(Code::NuMu) == 14); 
+    REQUIRE(GetPDG(Code::NuE) == 12); 
+    REQUIRE(GetPDG(Code::MuMinus) == 13); 
   }
+  
 }
-- 
GitLab