iutest  1.17.1.0
iutest_mediator.hpp
[詳解]
1 //======================================================================
2 //-----------------------------------------------------------------------
13 //-----------------------------------------------------------------------
14 //======================================================================
15 #ifndef INCG_IRIS_IUTEST_MEDIATOR_HPP_BFBE202B_0E60_4E44_8BDA_CB801D264F3E_
16 #define INCG_IRIS_IUTEST_MEDIATOR_HPP_BFBE202B_0E60_4E44_8BDA_CB801D264F3E_
17 
18 namespace iutest {
19 
20 //======================================================================
21 // declare
22 class TestInfo;
23 class TestCase;
24 class TestPartResult;
25 
26 namespace detail
27 {
28 
29 //======================================================================
30 // class
34 class iuITestInfoMediator
35 {
36 protected:
37  TestInfo* m_test_info;
38 public:
39  explicit iuITestInfoMediator(TestInfo* p=NULL) IUTEST_CXX_NOEXCEPT_SPEC : m_test_info(p) {}
40 public:
41  virtual ~iuITestInfoMediator() IUTEST_CXX_DEFAULT_FUNCTION
42  virtual bool HasFatalFailure() const = 0;
43  virtual bool HasNonfatalFailure() const = 0;
44  virtual bool HasFailure() const = 0;
45  virtual bool IsSkipped() const = 0;
46  TestInfo* ptr() const IUTEST_CXX_NOEXCEPT_SPEC { return m_test_info; }
47 };
48 
52 class iuITestCaseMediator
53 {
54 protected:
55  TestCase* m_test_case;
56 public:
57  explicit iuITestCaseMediator(TestCase* p=NULL) IUTEST_CXX_NOEXCEPT_SPEC : m_test_case(p) {}
58 public:
59  virtual ~iuITestCaseMediator() IUTEST_CXX_DEFAULT_FUNCTION
60  virtual const char* test_case_name() const = 0;
61  virtual const char* type_param() const = 0;
62  TestCase* ptr() const IUTEST_CXX_NOEXCEPT_SPEC { return m_test_case; }
63 };
64 
65 } // end of namespace detail
66 } // end of namespace iutest
67 
68 #endif // INCG_IRIS_IUTEST_MEDIATOR_HPP_BFBE202B_0E60_4E44_8BDA_CB801D264F3E_
IUTEST_CXX_DEFAULT_FUNCTION
#define IUTEST_CXX_DEFAULT_FUNCTION
default function
Definition: iutest_compiler.hpp:420
iutest_config.hpp
iris unit test config
IUTEST_CXX_NOEXCEPT_SPEC
#define IUTEST_CXX_NOEXCEPT_SPEC
noexcept specification definition
Definition: iutest_compiler.hpp:734
iutest
iutest root namespace
Definition: iutest_charcode.hpp:31