1//===- UniqueGCFactoryBaseTest.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 UNIQUE_GCFACTORYBASE_TEST_H
10#define UNIQUE_GCFACTORYBASE_TEST_H
11
12#include "mcld/Support/UniqueGCFactory.h"
13#include "mcld/LinkerConfig.h"
14#include "mcld/LD/DiagnosticPrinter.h"
15#include <gtest.h>
16
17namespace mcldtest {
18
19/** \class UniqueGCFactoryBaseTest
20 *  - check the unique of key.
21 *  - make sure the key associates with the same storage of value.
22 *  - check if all functions in the GCFactoryBase are available.
23 */
24class UniqueGCFactoryBaseTest : public ::testing::Test {
25 public:
26  // Constructor can do set-up work for all test here.
27  UniqueGCFactoryBaseTest();
28
29  // Destructor can do clean-up work that doesn't throw exceptions here.
30  virtual ~UniqueGCFactoryBaseTest();
31
32  // SetUp() will be called immediately before each test.
33  virtual void SetUp();
34
35  // TearDown() will be called immediately after each test.
36  virtual void TearDown();
37
38 private:
39  mcld::LinkerConfig* m_pConfig;
40};
41
42}  // namespace of mcldtest
43
44#endif
45