ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigHypothesis
TrigHLTJetHypoUnitTests
src
MockJetWithLorentzVector.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TRIGHLTJETHYPOUNITTESTS_MOCKJETWITHLORENTZVECTOR_H
6
#define TRIGHLTJETHYPOUNITTESTS_MOCKJETWITHLORENTZVECTOR_H
7
8
#include "
TrigHLTJetHypo/TrigHLTJetHypoUtils/IJet.h
"
9
#include "gtest/gtest.h"
10
#include "gmock/gmock.h"
11
#include <TLorentzVector.h>
12
13
using
::testing::Invoke;
14
using
::testing::Return;
15
using
::testing::_;
16
using
::testing::SetArgReferee;
17
using
::testing::AnyNumber;
18
19
class
MockJetWithLorentzVector
:
public
HypoJet::IJet
{
20
public
:
21
22
MockJetWithLorentzVector
(
const
TLorentzVector& lv):
m_lv
{lv} {
23
ON_CALL(*
this
,
eta
())
24
.WillByDefault(Invoke(&
m_lv
, &TLorentzVector::Eta));
25
ON_CALL(*
this
,
et
())
26
.WillByDefault(Invoke(&
m_lv
,
27
static_cast<
double
(TLorentzVector::*)()
const
>
28
(&TLorentzVector::Et)));
29
}
30
31
MOCK_CONST_METHOD0
(
pt
,
double
());
32
MOCK_CONST_METHOD0
(
eta
,
double
());
33
MOCK_CONST_METHOD0
(
phi
,
double
());
34
MOCK_CONST_METHOD0
(
m
,
double
());
35
MOCK_CONST_METHOD0
(
e
,
double
());
36
MOCK_CONST_METHOD0
(
et
,
double
());
37
MOCK_CONST_METHOD0
(
rapidity
,
double
());
38
virtual
TLorentzVector
p4
()
const override
{
return
m_lv
;}
39
virtual
std::string
toString
()
const override
{
40
double
etav =
eta
();
41
double
etv =
et
();
42
std::string s =
"et: "
+ std::to_string(etv) +
43
" eta: "
+ std::to_string(etav);
44
return
s;
45
}
46
47
MOCK_CONST_METHOD0
(
position
,
unsigned
int
());
48
MOCK_CONST_METHOD2
(
getAttribute
,
bool
(
const
std::string&,
float
&));
49
50
// Had problems compiling mock method
51
// MOCK_CONST_METHOD0(xAODJet, std::optional<const xAOD::Jet*>);
52
virtual
std::optional<const xAOD::Jet*>
xAODJet
()
const override
{
53
return
std::optional<const xAOD::Jet*> ();
54
}
55
private
:
56
TLorentzVector
m_lv
;
57
58
};
59
#endif
IJet.h
HypoJet::IJet
Definition
IJet.h:16
HypoJet::IJet::rapidity
virtual double rapidity() const =0
HypoJet::IJet::m
virtual double m() const =0
HypoJet::IJet::eta
virtual double eta() const =0
HypoJet::IJet::pt
virtual double pt() const =0
HypoJet::IJet::et
virtual double et() const =0
HypoJet::IJet::phi
virtual double phi() const =0
HypoJet::IJet::e
virtual double e() const =0
HypoJet::IJet::getAttribute
virtual bool getAttribute(const std::string &name, float &) const =0
HypoJet::IJet::position
virtual unsigned int position() const =0
MockJetWithLorentzVector::xAODJet
virtual std::optional< const xAOD::Jet * > xAODJet() const override
Definition
MockJetWithLorentzVector.h:52
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(pt, double())
MockJetWithLorentzVector::toString
virtual std::string toString() const override
Definition
MockJetWithLorentzVector.h:39
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(phi, double())
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(et, double())
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(rapidity, double())
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(e, double())
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(position, unsigned int())
MockJetWithLorentzVector::MOCK_CONST_METHOD2
MOCK_CONST_METHOD2(getAttribute, bool(const std::string &, float &))
MockJetWithLorentzVector::MockJetWithLorentzVector
MockJetWithLorentzVector(const TLorentzVector &lv)
Definition
MockJetWithLorentzVector.h:22
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(m, double())
MockJetWithLorentzVector::p4
virtual TLorentzVector p4() const override
Definition
MockJetWithLorentzVector.h:38
MockJetWithLorentzVector::MOCK_CONST_METHOD0
MOCK_CONST_METHOD0(eta, double())
MockJetWithLorentzVector::m_lv
TLorentzVector m_lv
Definition
MockJetWithLorentzVector.h:56
const
Generated on
for ATLAS Offline Software by
1.17.0