+
+template <typename Case>
+struct Test<Case, void>: public ITest
+{
+ static Registrator<Case, void> s_Registrator;
+ Test()
+ {
+ Registrator<Case, void>* r = &s_Registrator;
+ r = 0;
+ }
+ template <typename E, typename T>
+ void assert_throw(void(T::*mf)(), const char* at)
+ {
+ try
+ {
+ (dynamic_cast<T*> (this)->*mf)();
+ throw yaffut::failure (at, "statement failed to throw");
+ }
+ catch(const E&){}
+ }
+};
+
+template <typename Case>
+Registrator<Case, void> Test<Case, void>::s_Registrator;
+
+
+