Home | History | Annotate | Download | only in unittests
      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