• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===- ELFReaderTest.h ----------------------------------------------------===//
2 //
3 //                     The MCLinker Project
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 #ifndef MCLD_ELFREADER_TEST_H
10 #define MCLD_ELFREADER_TEST_H
11 
12 #include <gtest.h>
13 #include <mcld/LinkerConfig.h>
14 #include <mcld/LD/ELFReaderIf.h>
15 #include <mcld/LD/ELFReader.h>
16 #include <mcld/LD/ELFObjectReader.h>
17 #include <mcld/Target/GNULDBackend.h>
18 #include <mcld/MC/InputBuilder.h>
19 
20 namespace mcld {
21   class ELFReader<64, true>;
22 } // namespace for mcld
23 
24 namespace mcldtest
25 {
26 
27 class ELFReaderTest : public ::testing::Test
28 {
29 public:
30   // Constructor can do set-up work for all test here.
31   ELFReaderTest();
32 
33   // Destructor can do clean-up work that doesn't throw exceptions here.
34   virtual ~ELFReaderTest();
35 
36   // SetUp() will be called immediately before each test.
37   virtual void SetUp();
38 
39   // TearDown() will be called immediately after each test.
40   virtual void TearDown();
41 
42 protected:
43   mcld::Input *m_pInput;
44   mcld::LinkerConfig *m_pConfig;
45   mcld::GNUInfo *m_pInfo;
46   mcld::GNULDBackend *m_pLDBackend;
47   mcld::ELFReaderIF *m_pELFReader;
48   mcld::Module *m_pModule;
49   mcld::IRBuilder *m_pIRBuilder;
50   mcld::ELFObjectReader *m_pELFObjReader;
51 };
52 
53 } // namespace of mcldtest
54 
55 #endif
56 
57