5#include "../tunit_export.h" 
   20    class registered_test_class;
 
   34      std::chrono::milliseconds elapsed_time() 
const noexcept {
 
   35        using namespace std::chrono_literals;
 
   36        if (start_time_point.time_since_epoch() == 0ms && end_time_point.time_since_epoch() == 0ms) 
return 0ms;
 
   37        if (end_time_point.time_since_epoch() == 0ms) 
return std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::high_resolution_clock::now() - start_time_point);
 
   38        return std::chrono::duration_cast<std::chrono::milliseconds>(end_time_point - start_time_point);
 
   41      std::string name() 
const noexcept {
return name_;}
 
   43      size_t test_count() 
const noexcept {
 
   45        for (
auto method : tests_)
 
   46          if (settings::default_settings().is_match_test_name(name(), method.name())) count++;
 
   50      size_t aborted_test_count() 
const noexcept {
 
   52        for (
auto method : tests_)
 
   53          if (settings::default_settings().is_match_test_name(name(), method.name()) && method.aborted()) count++;
 
   57      size_t failed_test_count() 
const noexcept {
 
   59        for (
auto method : tests_)
 
   60          if (settings::default_settings().is_match_test_name(name(), method.name()) && method.failed()) count++;
 
   64      size_t ignored_test_count() 
const noexcept {
 
   66        for (
auto method : tests_)
 
   67          if (settings::default_settings().is_match_test_name(name(), method.name()) && method.ignored()) count++;
 
   71      size_t succeed_test_count() 
const noexcept {
 
   73        for (
auto method : tests_)
 
   74          if (settings::default_settings().is_match_test_name(name(), method.name()) && method.succeed()) count++;
 
   78      const std::vector<xtd::tunit::test>& tests() 
const noexcept {
return tests_;}
 
   85      void add_test_cleanup(
const xtd::tunit::test& test_cleanup) 
noexcept {test_cleanup_ = test_cleanup;}
 
   87      void add_test_initialize(
const xtd::tunit::test& test_initialize) 
noexcept {test_initialize_ = test_initialize;}
 
  103      const xtd::tunit::test& test_cleanup() 
const noexcept {
return test_cleanup_;}
 
  104      const xtd::tunit::test& test_initialize() 
const noexcept {
return test_initialize_;}
 
  105      const std::vector<xtd::tunit::test>& test_methods() 
const noexcept {
return tests_;}
 
  111      std::chrono::high_resolution_clock::time_point end_time_point;
 
  113      std::chrono::high_resolution_clock::time_point start_time_point;
 
  116      std::vector<xtd::tunit::test> tests_;
 
  121#define test_class_(class_name) \ 
  123  xtd::tunit::test_class_attribute<class_name> __##class_name##_attribute {#class_name}; \ 
  124  class class_name : public xtd::tunit::test_class 
  126#define test_class_from_(class_name, from_class_name) \ 
  128  xtd::tunit::test_class_attribute<class_name> __##class_name##_attribute {#class_name}; \ 
  129  class class_name : public from_class_name 
Contains xtd::tunit::class_cleanup_attribute class.
 
Contains xtd::tunit::class_initialize_attribute class.
 
This attribute is use to add cleanup class method to class test attribute.
Definition: class_cleanup_attribute.h:17
 
This attribute is use to add initialize class method to class test attribute.
Definition: class_initialize_attribute.h:17
 
Represents the registered test class.
Definition: registered_test_class.h:19
 
Definition: test_class.h:25
 
Definition: test_cleanup_attribute.h:11
 
Definition: test_initialize_attribute.h:11
 
Definition: test_method_attribute.h:12
 
The template class.
Definition: unit_test.h:32
 
#define tunit_export_
Define shared library export.
Definition: tunit_export.h:13
 
#define class_initialize_(method_name)
add initialize class method to class test.
Definition: class_initialize_attribute.h:42
 
#define class_cleanup_(method_name)
Add cleanup class method to class test.
Definition: class_cleanup_attribute.h:42
 
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition: system_report.h:17
 
Contains xtd::tunit::test_cleanup_attribute class.
 
Contains xtd::tunit::test_initialize_attribute class.
 
Contains xtd::tunit::test_method_attribute class.
 
Contains xtd::tunit::settings class.