9 #include <boost/test/unit_test.hpp>
20 using namespace Acts::UnitLiterals;
21 using namespace ActsFatras;
27 template <
typename generator_t>
28 std::array<ActsFatras::Particle, 4> operator()(generator_t &,
54 std::vector<Particle> children;
58 BOOST_AUTO_TEST_SUITE(FatrasProcess)
65 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
66 BOOST_CHECK_EQUAL(f.children.size(), 4
u);
75 f.parent.setAbsMomentum(20_GeV);
76 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
77 BOOST_CHECK_EQUAL(f.children.size(), 4
u);
79 f.parent.setAbsMomentum(10_GeV);
80 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
81 BOOST_CHECK_EQUAL(f.children.size(), 8
u);
83 f.parent.setAbsMomentum(2_GeV);
84 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
86 BOOST_CHECK_EQUAL(f.children.size(), 8
u);
95 f.parent.setAbsMomentum(20_GeV);
96 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
97 BOOST_CHECK_EQUAL(f.children.size(), 4
u);
99 f.parent.setAbsMomentum(10_GeV);
100 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
101 BOOST_CHECK_EQUAL(f.children.size(), 8
u);
103 f.parent.setAbsMomentum(2_GeV);
104 BOOST_CHECK(process(f.generator, f.slab, f.parent, f.children));
106 BOOST_CHECK_EQUAL(f.children.size(), 12
u);
117 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
118 BOOST_CHECK_EQUAL(f.children.size(), 0
u);
121 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
122 BOOST_CHECK_EQUAL(f.children.size(), 1
u);
125 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
126 BOOST_CHECK_EQUAL(f.children.size(), 4
u);
129 BOOST_CHECK(not process(f.generator, f.slab, f.parent, f.children));
130 BOOST_CHECK_EQUAL(f.children.size(), 8
u);
133 BOOST_AUTO_TEST_SUITE_END()