To which unit tests should a class be submitted to guarantee it has all the properties required by the C++ safe-bool idiom?
Trying to name all of them (extracted from The Safe Bool Idiom), for an instance test of a class Test which supposedly implements the safe-bool idiom, it should enable the following constructs:
if (test) { /* test is valid */ }if (!test) { /* test is not valid */ }
...and disallow the following constructs:
test << 1;int i = test;delete test;if (test1 == test2) {}if (test != test2) {}