8 #include "gtest/gtest.h"
15 #include "../src/TLorentzVectorFactory.h"
16 #include "../src/TLorentzVectorAsIJet.h"
17 #include "../src/makeHypoJets.h"
18 #include "../src/makeRepeatedConditions.h"
27 etas.push_back(std::make_pair(0., 1.5));
48 TEST(ConditionFilterTester, construction_zeroconditions) {
52 TEST(ConditionFilterTester, construction_onecondition) {
58 TEST(ConditionFilterTester, zerojets_zeroconditions) {
62 std::unique_ptr<ITrigJetHypoInfoCollector> deb(
nullptr);
64 auto fj = rf.filter(tv, deb);
65 EXPECT_EQ(fj.size(), 0
u);
69 TEST(ConditionFilterTester, zerojets_onecondition) {
76 std::unique_ptr<ITrigJetHypoInfoCollector> deb(
nullptr);
78 auto fj =
filter.filter(tv, deb);
79 EXPECT_EQ(fj.size(), 0
u);
82 TEST(ConditionFilterTester, twojets_zeroconditions) {
86 std::unique_ptr<ITrigJetHypoInfoCollector> deb(
nullptr);
87 std::vector<double> jet_eta{1.0, 0.5, 2.0, 4.0};
90 EXPECT_EQ(tv.size(), 4
u);
92 auto fj =
filter.filter(tv, deb);
93 EXPECT_EQ(fj.size(), 4
u);
106 double f_eta = fj.front()->eta();
107 double s_eta = fj.back()->eta();
109 EXPECT_EQ(f_eta, tv.front()->eta());
110 EXPECT_EQ(s_eta, tv.back()->eta());
115 TEST(ConditionFilterTester, twojets_onecondition) {
119 std::unique_ptr<ITrigJetHypoInfoCollector> deb(
nullptr);
121 std::vector<double> jet_eta{1.0, 0.5, 2.0, 4.0};
124 auto fj =
filter.filter(tv, deb);
125 EXPECT_EQ(fj.size(), 2
u);
127 auto etas = std::vector<double> {};
128 etas.reserve(fj.size());
131 std::back_inserter(
etas),
132 [](
const pHypoJet& hj){return hj->eta();});
133 std::sort(
etas.begin(),
etas.end());
135 EXPECT_EQ(
etas.size(), 2
u);
136 EXPECT_DOUBLE_EQ(
etas[0], 0.5);
137 EXPECT_DOUBLE_EQ(
etas[1], 1.0);