diff --git a/Tests/UnitTests/Core/EventData/SeedEdmTests.cpp b/Tests/UnitTests/Core/EventData/SeedEdmTests.cpp index f4b63b36a0f9..a44786e9bde2 100644 --- a/Tests/UnitTests/Core/EventData/SeedEdmTests.cpp +++ b/Tests/UnitTests/Core/EventData/SeedEdmTests.cpp @@ -10,20 +10,58 @@ #include "Acts/EventData/Seed.hpp" +#include + namespace Acts::Test { struct SpacePoint {}; +BOOST_AUTO_TEST_CASE(seed_edm_constructors) { + std::array storage{}; + Acts::Seed seed(storage[0], storage[1], storage[2], + storage[3], storage[4]); + const std::array& sps = seed.sp(); + for (std::size_t i(0ul); i < 5ul; ++i) { + BOOST_CHECK_NE(sps[i], nullptr); + BOOST_CHECK_EQUAL(sps[i], &storage[i]); + } + + // Copy 1 + Acts::Seed seed_copy1(seed); + const std::array& sps_copy1 = + seed_copy1.sp(); + for (std::size_t i(0ul); i < 5ul; ++i) { + BOOST_CHECK_NE(sps_copy1[i], nullptr); + BOOST_CHECK_EQUAL(sps_copy1[i], sps[i]); + } + + // Copy 2 + Acts::Seed seed_copy2{seed}; + const std::array& sps_copy2 = + seed_copy2.sp(); + for (std::size_t i(0ul); i < 5ul; ++i) { + BOOST_CHECK_NE(sps_copy2[i], nullptr); + BOOST_CHECK_EQUAL(sps_copy2[i], sps[i]); + } + + // Collection + std::vector> seeds{seed}; + // Copy 1 + std::vector> seeds_copy1(seeds); + BOOST_CHECK_EQUAL(seeds_copy1.size(), seeds.size()); + // Copy 2 + std::vector> seeds_copy2{seeds}; + BOOST_CHECK_EQUAL(seeds_copy2.size(), seeds.size()); +} + BOOST_AUTO_TEST_CASE(seed_edm_default) { std::array storage{}; Acts::Seed seed(storage[0], storage[1], storage[2]); const std::array& sps = seed.sp(); - BOOST_CHECK_NE(sps[0], nullptr); - BOOST_CHECK_NE(sps[1], nullptr); - BOOST_CHECK_NE(sps[2], nullptr); - BOOST_CHECK_EQUAL(sps[0], &storage[0]); - BOOST_CHECK_EQUAL(sps[1], &storage[1]); - BOOST_CHECK_EQUAL(sps[2], &storage[2]); + for (std::size_t i(0ul); i < 3ul; ++i) { + BOOST_CHECK_NE(sps[i], nullptr); + BOOST_CHECK_EQUAL(sps[i], &storage[i]); + } seed.setVertexZ(-1.2f); BOOST_CHECK_EQUAL(seed.z(), -1.2f); @@ -37,12 +75,10 @@ BOOST_AUTO_TEST_CASE(seed_edm_3d) { Acts::Seed seed(storage[0], storage[1], storage[2]); const std::array& sps = seed.sp(); - BOOST_CHECK_NE(sps[0], nullptr); - BOOST_CHECK_NE(sps[1], nullptr); - BOOST_CHECK_NE(sps[2], nullptr); - BOOST_CHECK_EQUAL(sps[0], &storage[0]); - BOOST_CHECK_EQUAL(sps[1], &storage[1]); - BOOST_CHECK_EQUAL(sps[2], &storage[2]); + for (std::size_t i(0ul); i < 3ul; ++i) { + BOOST_CHECK_NE(sps[i], nullptr); + BOOST_CHECK_EQUAL(sps[i], &storage[i]); + } seed.setVertexZ(-1.2f); BOOST_CHECK_EQUAL(seed.z(), -1.2f); @@ -56,14 +92,10 @@ BOOST_AUTO_TEST_CASE(seed_edm_4d) { Acts::Seed seed(storage[0], storage[1], storage[2], storage[3]); const std::array& sps = seed.sp(); - BOOST_CHECK_NE(sps[0], nullptr); - BOOST_CHECK_NE(sps[1], nullptr); - BOOST_CHECK_NE(sps[2], nullptr); - BOOST_CHECK_NE(sps[3], nullptr); - BOOST_CHECK_EQUAL(sps[0], &storage[0]); - BOOST_CHECK_EQUAL(sps[1], &storage[1]); - BOOST_CHECK_EQUAL(sps[2], &storage[2]); - BOOST_CHECK_EQUAL(sps[3], &storage[3]); + for (std::size_t i(0ul); i < 4ul; ++i) { + BOOST_CHECK_NE(sps[i], nullptr); + BOOST_CHECK_EQUAL(sps[i], &storage[i]); + } seed.setVertexZ(-1.2f); BOOST_CHECK_EQUAL(seed.z(), -1.2f);