ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/dhidas/OSUAnalysis/Tools/test/TestJet.h
Revision: 1.1.1.1 (vendor branch)
Committed: Thu Dec 1 16:28:47 2011 UTC (13 years, 5 months ago) by dhidas
Content type: text/plain
Branch: dhidas, MAIN
CVS Tags: START, HEAD
Changes since 1.1: +0 -0 lines
Log Message:
osu copy modified

File Contents

# Content
1 #include "cute/cute.h"
2 #include "cute/cute_suite.h"
3
4 #include "../interface/RecoObjects/Jet.h"
5 #include "TestObjectFactory.h"
6
7 using namespace BAT;
8
9 struct TestJet {
10 JetPointer goodJet;
11 JetPointer goodBJet;
12 JetPointer badEtaJet;
13 JetPointer badEtJet;
14 JetPointer badEMFJet;
15 JetPointer badn90HitsJet;
16 JetPointer badfHPDJet;
17
18 TestJet() :
19 goodJet(TestObjectFactory::goodCaloJet()),
20 goodBJet(TestObjectFactory::goodCaloBJetSSVHEM()),
21 badEtaJet(TestObjectFactory::badEtaCaloJet()),
22 badEtJet(TestObjectFactory::badEtCaloJet()),
23 badEMFJet(TestObjectFactory::badEMFCaloJet()),
24 badn90HitsJet(TestObjectFactory::badN90CaloJet()),
25 badfHPDJet(TestObjectFactory::badfHPDCaloJet()) {
26 }
27
28 public:
29
30 /**
31 * tests for isGood are done at creation level!
32 */
33 void testGoodJet() {
34 ASSERT(goodJet->isGood());
35 }
36
37 void testBadEtaJet() {
38 ASSERT(badEtaJet->isGood() == false);
39 }
40
41 void testBadEtJet() {
42 ASSERT(badEtJet->isGood() == false);
43 }
44
45 void testBadEMFJet() {
46 ASSERT(badEMFJet->isGood() == false);
47 }
48
49 void testBadN90HitsJet() {
50 ASSERT(badn90HitsJet->isGood() == false);
51 }
52
53 void testBadfHPDJet() {
54 ASSERT(badfHPDJet->isGood() == false);
55 }
56
57 void testUsedJetAlgorithm() {
58 ASSERT_EQUAL(JetAlgorithm::Calo_AntiKT_Cone05, goodJet->getUsedAlgorithm());
59 goodJet->setUsedAlgorithm(JetAlgorithm::CA08PF);
60 ASSERT_EQUAL(JetAlgorithm::CA08PF, goodJet->getUsedAlgorithm());
61 }
62
63 void testJetEMF() {
64 goodJet->setEMF(2304.23);
65 ASSERT_EQUAL_DELTA(2304.23, goodJet->emf(), 0.01);
66 }
67
68 void testJetN90Hits() {
69 goodJet->setN90Hits(234.);
70 ASSERT_EQUAL_DELTA(234., goodJet->n90Hits(), 0.1);
71 }
72
73 void testJetFHPD() {
74 goodJet->setFHPD(0.444);
75 ASSERT_EQUAL_DELTA(0.444, goodJet->fHPD(), 0.001);
76 }
77
78 void testPositiveBtag() {
79 ASSERT(goodBJet->isBJet(BtagAlgorithm::SimpleSecondaryVertexHighEffBTag));
80 }
81
82 void testNegativeBtag() {
83 ASSERT(goodJet->isBJet(BtagAlgorithm::SimpleSecondaryVertexHighEffBTag) == false);
84 }
85
86 };
87
88 extern cute::suite make_suite_TestJet() {
89 cute::suite s;
90
91 s.push_back(CUTE_SMEMFUN(TestJet, testGoodJet));
92 s.push_back(CUTE_SMEMFUN(TestJet, testBadEtaJet));
93 s.push_back(CUTE_SMEMFUN(TestJet, testBadEtJet));
94 s.push_back(CUTE_SMEMFUN(TestJet, testBadEMFJet));
95 s.push_back(CUTE_SMEMFUN(TestJet, testBadN90HitsJet));
96 s.push_back(CUTE_SMEMFUN(TestJet, testBadfHPDJet));
97
98 s.push_back(CUTE_SMEMFUN(TestJet, testUsedJetAlgorithm));
99 s.push_back(CUTE_SMEMFUN(TestJet, testJetEMF));
100 s.push_back(CUTE_SMEMFUN(TestJet, testJetN90Hits));
101 s.push_back(CUTE_SMEMFUN(TestJet, testJetFHPD));
102
103 s.push_back(CUTE_SMEMFUN(TestJet, testPositiveBtag));
104 s.push_back(CUTE_SMEMFUN(TestJet, testNegativeBtag));
105
106 return s;
107 }