Quote Originally Posted by Jasper Bekkers View Post
That's because they're testing behavior and not implementation (which they should)
I can't imagine why they should -- what defines an object is its behavior, not its implementation.

Who cares if a multiply($a, $b) method is implemented as return $a * $b or as
PHP Code:
for ($i 1$i $a$i++) { $b += $a }; return $b
It's only important to get the correct result out.