The more the test relies on implementation details, the worst.
I'm not convinced about this.
My understanding of these tests is that they make sure new/better
implementations don't break the user experience/defined behavior. If
the test relies on the implementation, then they lose most of their
interest.