00001
00002
00003 #include <StjTrgReader.h>
00004 #include <StjTrgTree.h>
00005
00006 #include <TFile.h>
00007 #include <TTree.h>
00008
00009 #include "StjTrgTreeTest.hh"
00010
00011
00012 CPPUNIT_TEST_SUITE_REGISTRATION( StjTrgTreeTest );
00013
00014 void StjTrgTreeTest::setUp()
00015 {
00016
00017 }
00018
00019 void StjTrgTreeTest::tearDown()
00020 {
00021
00022 }
00023
00024 void StjTrgTreeTest::testOne()
00025 {
00026 TFile* file = new TFile("./part_run6143024.root");
00027
00028 TTree *tree = dynamic_cast<TTree*>(file->Get("trgBJP2"));
00029
00030 StjTrgReader *reader = new StjTrgReader(tree);
00031
00032 tree->BuildIndex("runNumber", "eventId");
00033
00034 reader->Init();
00035
00036 StjTrgTree* trg = new StjTrgTree(reader);
00037
00038 reader->GetEntryWithIndex(6143024, 1095);
00039 CPPUNIT_ASSERT_EQUAL( 96233, trg->id() );
00040 CPPUNIT_ASSERT_EQUAL( 6143024, trg->runNumber() );
00041 CPPUNIT_ASSERT_EQUAL( 1095, trg->eventId() );
00042 CPPUNIT_ASSERT_EQUAL( true, trg->hard() );
00043 CPPUNIT_ASSERT_EQUAL( true, trg->soft() );
00044 CPPUNIT_ASSERT_EQUAL( true, trg->passed() );
00045 CPPUNIT_ASSERT_EQUAL( 1.0, trg->prescale() );
00046 CPPUNIT_ASSERT_EQUAL( (size_t)0, trg->towers().size() );
00047 CPPUNIT_ASSERT_EQUAL( (size_t)1, trg->jetPatches().size() );
00048 CPPUNIT_ASSERT_EQUAL( 3, trg->jetPatches()[0] );
00049
00050 reader->GetEntryWithIndex(6143024, 2000);
00051 CPPUNIT_ASSERT_EQUAL( false, trg->hard() );
00052 CPPUNIT_ASSERT_EQUAL( false, trg->soft() );
00053 CPPUNIT_ASSERT_EQUAL( false, trg->passed() );
00054 CPPUNIT_ASSERT_EQUAL( (size_t)0, trg->towers().size() );
00055 CPPUNIT_ASSERT_EQUAL( (size_t)0, trg->jetPatches().size() );
00056
00057 reader->GetEntryWithIndex(6143024, 24897);
00058 CPPUNIT_ASSERT_EQUAL( 96233, trg->id() );
00059 CPPUNIT_ASSERT_EQUAL( 6143024, trg->runNumber() );
00060 CPPUNIT_ASSERT_EQUAL( 24897, trg->eventId() );
00061 CPPUNIT_ASSERT_EQUAL( true, trg->hard() );
00062 CPPUNIT_ASSERT_EQUAL( true, trg->soft() );
00063 CPPUNIT_ASSERT_EQUAL( true, trg->passed() );
00064 CPPUNIT_ASSERT_EQUAL( 1.0, trg->prescale() );
00065 CPPUNIT_ASSERT_EQUAL( (size_t)0, trg->towers().size() );
00066 CPPUNIT_ASSERT_EQUAL( (size_t)1, trg->jetPatches().size() );
00067 CPPUNIT_ASSERT_EQUAL( 4, trg->jetPatches()[0] );
00068
00069 reader->GetEntryWithIndex(6143024, 28661);
00070 CPPUNIT_ASSERT_EQUAL( 96233, trg->id() );
00071 CPPUNIT_ASSERT_EQUAL( 6143024, trg->runNumber() );
00072 CPPUNIT_ASSERT_EQUAL( 28661, trg->eventId() );
00073 CPPUNIT_ASSERT_EQUAL( true, trg->hard() );
00074 CPPUNIT_ASSERT_EQUAL( true, trg->soft() );
00075 CPPUNIT_ASSERT_EQUAL( true, trg->passed() );
00076 CPPUNIT_ASSERT_EQUAL( 1.0, trg->prescale() );
00077 CPPUNIT_ASSERT_EQUAL( (size_t)0, trg->towers().size() );
00078 CPPUNIT_ASSERT_EQUAL( (size_t)1, trg->jetPatches().size() );
00079 CPPUNIT_ASSERT_EQUAL( 2, trg->jetPatches()[0] );
00080
00081 }