ATLAS Offline Software
Functions | Variables
ConditionFilterTest.cxx File Reference
#include "CxxUtils/checker_macros.h"
#include "gtest/gtest.h"
#include "TrigHLTJetHypo/../src/ConditionFilter.h"
#include "TrigHLTJetHypo/../src/ITrigJetHypoInfoCollector.h"
#include "TrigHLTJetHypo/../src/EtaConditionAbs.h"
#include "TrigHLTJetHypo/../src/RepeatedCondition.h"
#include "../src/TLorentzVectorFactory.h"
#include "../src/TLorentzVectorAsIJet.h"
#include "../src/makeHypoJets.h"
#include "../src/makeRepeatedConditions.h"
#include <vector>
#include <memory>

Go to the source code of this file.

Functions

ConditionPtrs cftMakeRepeatedConditions ()
 
 TEST (ConditionFilterTester, construction_zeroconditions)
 
 TEST (ConditionFilterTester, construction_onecondition)
 
 TEST (ConditionFilterTester, zerojets_zeroconditions)
 
 TEST (ConditionFilterTester, zerojets_onecondition)
 
 TEST (ConditionFilterTester, twojets_zeroconditions)
 
 TEST (ConditionFilterTester, twojets_onecondition)
 

Variables

 ATLAS_NO_CHECK_FILE_THREAD_SAFETY
 

Function Documentation

◆ cftMakeRepeatedConditions()

ConditionPtrs cftMakeRepeatedConditions ( )

Definition at line 23 of file ConditionFilterTest.cxx.

23  {
24 
25 
26  EtaPairs etas;
27  etas.push_back(std::make_pair(0., 1.5));
28 
30 
31  /*
32  auto el_condition = std::unique_ptr<ICondition>(nullptr);
33  el_condition.reset(new EtaConditionAbs(0., 1.5));
34 
35  auto rep_condition = std::unique_ptr<IRepeatedCondition>(nullptr);
36 
37  std::size_t multiplicity{1u};
38  rep_condition.reset(new RepeatedCondition(std::move(el_condition),
39  multiplicity));
40 
41  ConditionPtrs conditions;
42  conditions.push_back(std::move(rep_condition));
43 
44  return conditions;
45  */
46 }

◆ TEST() [1/6]

TEST ( ConditionFilterTester  ,
construction_onecondition   
)

Definition at line 52 of file ConditionFilterTest.cxx.

52  {
53 
54  ConditionPtrs conditionPtrs = cftMakeRepeatedConditions();
55  EXPECT_NO_THROW(ConditionFilter(std::move(conditionPtrs)));
56 }

◆ TEST() [2/6]

TEST ( ConditionFilterTester  ,
construction_zeroconditions   
)

Definition at line 48 of file ConditionFilterTest.cxx.

48  {
49  EXPECT_NO_THROW(ConditionFilter());
50 }

◆ TEST() [3/6]

TEST ( ConditionFilterTester  ,
twojets_onecondition   
)

Definition at line 115 of file ConditionFilterTest.cxx.

115  {
116 
117  ConditionPtrs conditionPtrs = cftMakeRepeatedConditions();
118  auto filter = ConditionFilter(std::move(conditionPtrs));
119  std::unique_ptr<ITrigJetHypoInfoCollector> deb(nullptr);
120 
121  std::vector<double> jet_eta{1.0, 0.5, 2.0, 4.0};
122  HypoJetVector tv = makeHypoJets(jet_eta);
123 
124  auto fj = filter.filter(tv, deb);
125  EXPECT_EQ(fj.size(), 2u);
126 
127  auto etas = std::vector<double> {};
128  etas.reserve(fj.size());
129  std::transform(fj.begin(),
130  fj.end(),
131  std::back_inserter(etas),
132  [](const pHypoJet& hj){return hj->eta();});
133  std::sort(etas.begin(), etas.end());
134 
135  EXPECT_EQ(etas.size(), 2u);
136  EXPECT_DOUBLE_EQ(etas[0], 0.5);
137  EXPECT_DOUBLE_EQ(etas[1], 1.0);
138 
139  }

◆ TEST() [4/6]

TEST ( ConditionFilterTester  ,
twojets_zeroconditions   
)

Definition at line 82 of file ConditionFilterTest.cxx.

82  {
83 
85 
86  std::unique_ptr<ITrigJetHypoInfoCollector> deb(nullptr);
87  std::vector<double> jet_eta{1.0, 0.5, 2.0, 4.0};
88  HypoJetVector tv = makeHypoJets(jet_eta);
89 
90  EXPECT_EQ(tv.size(), 4u);
91 
92  auto fj = filter.filter(tv, deb);
93  EXPECT_EQ(fj.size(), 4u);
94 
95  /*
96  const auto& fiter = pair.first;
97  const auto& siter = pair.second;
98 
99  double f_eta = (*fiter)->eta();
100  double s_eta = (*(siter-1))->eta();
101 
102  EXPECT_EQ( f_eta, (*(tv.begin()))->eta());
103  EXPECT_EQ( s_eta, (*(tv.end()-1))->eta());
104  */
105 
106  double f_eta = fj.front()->eta();
107  double s_eta = fj.back()->eta();
108 
109  EXPECT_EQ(f_eta, tv.front()->eta());
110  EXPECT_EQ(s_eta, tv.back()->eta());
111 
112 }

◆ TEST() [5/6]

TEST ( ConditionFilterTester  ,
zerojets_onecondition   
)

Definition at line 69 of file ConditionFilterTest.cxx.

69  {
70 
71  auto conditionPtrs = cftMakeRepeatedConditions();
72  ConditionFilter filter(std::move(conditionPtrs));
73 
74  HypoJetVector tv{};
75 
76  std::unique_ptr<ITrigJetHypoInfoCollector> deb(nullptr);
77 
78  auto fj = filter.filter(tv, deb);
79  EXPECT_EQ(fj.size(), 0u);
80 }

◆ TEST() [6/6]

TEST ( ConditionFilterTester  ,
zerojets_zeroconditions   
)

Definition at line 58 of file ConditionFilterTest.cxx.

58  {
59  auto rf = ConditionFilter();
60  HypoJetVector tv{};
61 
62  std::unique_ptr<ITrigJetHypoInfoCollector> deb(nullptr);
63 
64  auto fj = rf.filter(tv, deb);
65  EXPECT_EQ(fj.size(), 0u);
66 
67 }

Variable Documentation

◆ ATLAS_NO_CHECK_FILE_THREAD_SAFETY

ATLAS_NO_CHECK_FILE_THREAD_SAFETY

Definition at line 6 of file ConditionFilterTest.cxx.

makeHypoJets
HypoJetVector makeHypoJets(const std::vector< double > &etas)
Definition: makeHypoJets.cxx:11
EtaPairs
std::vector< EtaPair > EtaPairs
Definition: makeRepeatedConditions.h:14
makeRepeatedConditions
ConditionPtrs makeRepeatedConditions(const EtaPair &eta)
Definition: makeRepeatedConditions.cxx:11
Trk::u
@ u
Enums for curvilinear frames.
Definition: ParamDefs.h:83
covarianceTool.filter
filter
Definition: covarianceTool.py:514
pHypoJet
std::shared_ptr< const HypoJet::IJet > pHypoJet
Definition: HypoJetDefs.h:25
Amg::transform
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
Definition: GeoPrimitivesHelpers.h:156
HypoJetVector
std::vector< pHypoJet > HypoJetVector
Definition: HypoJetDefs.h:27
std::sort
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
Definition: DVL_algorithms.h:623
ConditionPtrs
std::vector< ConditionPtr > ConditionPtrs
Definition: RepeatedConditionsDefs.h:20
ConditionFilter
Definition: ConditionFilter.h:12
cftMakeRepeatedConditions
ConditionPtrs cftMakeRepeatedConditions()
Definition: ConditionFilterTest.cxx:23
EgEfficiencyCorr_testFixedInput.etas
list etas
Definition: EgEfficiencyCorr_testFixedInput.py:9