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

# User Rev Content
1 dhidas 1.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     }