| 80 | |
| 81 | template <class B> |
| 82 | inline void CheckTryFail(B v) { |
| 83 | static const A defaultV = 42; |
| 84 | A convV = defaultV; // to check that original value is not trashed on bad cast |
| 85 | UNIT_ASSERT_VALUES_EQUAL(TryFromString<A>(ToString(v), convV), false); // char |
| 86 | UNIT_ASSERT_VALUES_EQUAL(defaultV, convV); |
| 87 | UNIT_ASSERT_VALUES_EQUAL(TryFromString<A>(ToWtring(v), convV), false); // wide char |
| 88 | UNIT_ASSERT_VALUES_EQUAL(defaultV, convV); |
| 89 | |
| 90 | TRY_HEX_MACROS_MAP(TRY_FAIL_HEX_CHECK, A, v, convV, defaultV); |
| 91 | } |
| 92 | }; |
| 93 | |
| 94 | template <> |