15 #ifndef INCG_IRIS_IUTEST_INFO_HPP_764A79A8_E822_4C0F_8CB7_82C635BA28BA_
16 #define INCG_IRIS_IUTEST_INFO_HPP_764A79A8_E822_4C0F_8CB7_82C635BA28BA_
35 :
public detail::iu_list_node<TestInfo>
45 TestInfo(detail::iuITestSuiteMediator* testsuite, const ::std::string&
name, detail::iuFactoryBase* factory)
48 , m_testsuite(testsuite)
51 , m_disable(detail::IsDisableTestName(
name))
53 , m_matches_filter(true)
55 m_mediator.SetPointer(
this);
60 const char*
test_suite_name()
const {
return m_testsuite->test_suite_name(); }
61 #if IUTEST_HAS_TESTCASE
62 const char* test_case_name()
const {
return m_testsuite->test_suite_name(); }
65 const char*
name()
const {
return m_testname.c_str(); }
82 const char*
value_param()
const {
return m_value_param.empty() ? NULL : m_value_param.c_str(); }
84 const char*
type_param()
const {
return m_testsuite->type_param(); }
116 return m_test_result.
Failed();
138 return m_test_result.
Passed();
154 ::std::string str = m_testname;
157 str +=
", where GetParam() = ";
158 str += m_value_param;
172 const char* ban[] = {
"name",
"status",
"time",
"classname",
"type_param",
"value_param" };
173 #if !defined(IUTEST_NO_FUNCTION_TEMPLATE_ORDERING)
181 void set_value_param(
const char* str) { m_value_param = str; }
192 #if IUTEST_HAS_SEH && IUTEST_HAS_EXCEPTIONS
193 #if IUTEST_HAS_MINIDUMP
194 void MiniDump(_EXCEPTION_POINTERS* ep);
196 void RunOnMSC(Test* test);
214 void skip() { m_skip =
true; }
224 return ptr()->HasFatalFailure();
228 return ptr()->HasNonfatalFailure();
232 return ptr()->HasFailure();
236 return ptr()->is_skipped();
239 void SetPointer(
TestInfo* p) { m_test_info = p; }
242 friend class UnitTestImpl;
243 friend class UnitTest;
244 friend class TestSuite;
245 friend class detail::UncaughtScopedTrace;
247 ::std::string m_testname;
248 ::std::string m_value_param;
249 TestResult m_test_result;
251 detail::iuFactoryBase* m_factory;
252 detail::iuITestSuiteMediator* m_testsuite;
257 bool m_matches_filter;
259 typedef ::std::vector<detail::iuCodeMessage> UncaughtMessagesType;
260 UncaughtMessagesType m_uncaught_messages;
268 # include "impl/iutest_info.ipp"
::std::string AddDefaultPackageName(const char *testsuite_name)
default package name を追加
const char * name() const
Definition: iutest_info.hpp:66
bool is_disabled_test() const IUTEST_CXX_NOEXCEPT_SPEC
Definition: iutest_info.hpp:72
TimeInMillisec elapsed_time() const
Definition: iutest_info.hpp:78
bool HasFatalFailure() const
致命的なエラーが出たかどうか
Definition: iutest_info.hpp:97
bool is_reportable() const IUTEST_CXX_NOEXCEPT_SPEC
Definition: iutest_info.hpp:76
bool should_run() const IUTEST_CXX_NOEXCEPT_SPEC
Definition: iutest_info.hpp:68
TestInfo(detail::iuITestSuiteMediator *testsuite, const ::std::string &name, detail::iuFactoryBase *factory)
コンストラクタ
Definition: iutest_info.hpp:46
const char * type_param() const
Definition: iutest_info.hpp:85
bool is_ran() const IUTEST_CXX_NOEXCEPT_SPEC
Definition: iutest_info.hpp:70
bool HasWarning() const
警告があるかどうか
Definition: iutest_info.hpp:124
bool HasFailure() const
エラーが出たかどうか
Definition: iutest_info.hpp:115
::std::string test_full_name() const
Definition: iutest_info.hpp:144
bool HasNonfatalFailure() const
致命的ではないエラーが出たかどうか
Definition: iutest_info.hpp:106
::std::string testsuite_name_with_default_package_name() const
Definition: iutest_info.hpp:88
const TestResult * result() const IUTEST_CXX_NOEXCEPT_SPEC
Definition: iutest_info.hpp:80
::std::string test_name_with_where() const
Definition: iutest_info.hpp:153
const char * test_suite_name() const
Definition: iutest_info.hpp:61
const char * value_param() const
Definition: iutest_info.hpp:83
static bool ValidateTestPropertyName(const ::std::string &name)
有効なプロパティ名かどうかチェック
Definition: iutest_info.hpp:171
bool Passed() const
成功したかどうか
Definition: iutest_info.hpp:133
bool is_skipped() const IUTEST_CXX_NOEXCEPT_SPEC
Definition: iutest_info.hpp:74
static bool ValidateName(const ::std::string &name, Ite begin, Ite end)
有効なキーかどうかチェック
Definition: iutest_result.hpp:193
TimeInMillisec elapsed_time() const IUTEST_CXX_NOEXCEPT_SPEC
テストの実行時間の取得
Definition: iutest_result.hpp:289
bool Passed() const
成功したかどうか
Definition: iutest_result.hpp:227
bool HasWarning() const
警告があるかどうか
Definition: iutest_result.hpp:283
bool HasFatalFailure() const
致命的なエラーがあるかどうか
Definition: iutest_result.hpp:265
bool Failed() const
失敗したかどうか
Definition: iutest_result.hpp:232
bool Skipped() const
スキップしたかどうか
Definition: iutest_result.hpp:248
bool HasNonfatalFailure() const
致命的でないエラーがあるかどうか
Definition: iutest_result.hpp:271
#define IUTEST_USE_OWN_LIST
テストの所持を独自リストクラスで行う
Definition: iutest_config.hpp:697
iris unit test テスト単体クラス ファイル
#define IUTEST_CXX_FINAL
final definition
Definition: iutest_compiler.hpp:756
#define IUTEST_CXX_OVERRIDE
override definition
Definition: iutest_compiler.hpp:747
#define IUTEST_CXX_NOEXCEPT_SPEC
noexcept specification definition
Definition: iutest_compiler.hpp:811
iris unit test テストファクトリー ファイル
#define IUTEST_PP_DISALLOW_COPY_AND_ASSIGN(TypeName)
コピー禁止定義
Definition: iutest_pp.hpp:31
iutest root namespace
Definition: iutest_charcode.hpp:33
detail::type_least_t< 8 >::UInt TimeInMillisec
ミリ秒単位を扱う型
Definition: iutest_defs.hpp:526