I just did an "Assert.That x, Iz.True", and got a very strange message saying
that the assertion failed:
Expected: True but was : True
The boolean "x" was set in a call to a function in a DLL, which is written in
C++. It turns out that the call was setting it to the C++ keyword "true",
rather than to the COM define VARIANT_TRUE.
It's great that SimplyVBUnit catches this problem -- COM functions written in
C++ should definitely not use "true" and "false" for booleans, they should
definitely use "VARIANT_TRUE" and "VARIANT_FALSE" instead -- but it might be
nice to somehow make the assertion failure message a little clearer.
Anyway, thanks for making SimplyVBUnit available to us!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I just did an "Assert.That x, Iz.True", and got a very strange message saying
that the assertion failed:
Expected: True but was : True
The boolean "x" was set in a call to a function in a DLL, which is written in
C++. It turns out that the call was setting it to the C++ keyword "true",
rather than to the COM define VARIANT_TRUE.
It's great that SimplyVBUnit catches this problem -- COM functions written in
C++ should definitely not use "true" and "false" for booleans, they should
definitely use "VARIANT_TRUE" and "VARIANT_FALSE" instead -- but it might be
nice to somehow make the assertion failure message a little clearer.
Anyway, thanks for making SimplyVBUnit available to us!