1 //===- InputTreeTest.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 UNITTESTS_INPUTTREE_TEST_H
10 #define UNITTESTS_INPUTTREE_TEST_H
11 
12 #include <gtest.h>
13 #include "mcld/MC/ContextFactory.h"
14 #include "mcld/Support/MemoryAreaFactory.h"
15 
16 namespace mcld {
17 
18 class InputTree;
19 class InputFactory;
20 class InputBuilder;
21 class LinkerConfig;
22 
23 namespace test {
24 
25 /** \class InputTreeTest
26  *  \brief
27  *
28  *  \see InputTree
29  */
30 class InputTreeTest : public ::testing::Test {
31  public:
32   // Constructor can do set-up work for all test here.
33   InputTreeTest();
34 
35   // Destructor can do clean-up work that doesn't throw exceptions here.
36   virtual ~InputTreeTest();
37 
38   // SetUp() will be called immediately before each test.
39   virtual void SetUp();
40 
41   // TearDown() will be called immediately after each test.
42   virtual void TearDown();
43 
44  protected:
45   mcld::LinkerConfig* m_pConfig;
46 
47   mcld::InputFactory* m_pAlloc;
48   mcld::InputBuilder* m_pBuilder;
49   mcld::MemoryAreaFactory m_MemFactory;
50   mcld::ContextFactory m_ContextFactory;
51 
52   mcld::InputTree* m_pTestee;
53 };
54 
55 }  // namespace of test
56 }  // namespace of mcld
57 
58 #endif
59