Some implementation details are more important than others. It's testing that we don't create a bunch of garbage objects. This is an important performance characteristic. The point of not testing implementation details is because you will change them in the course of normal development and don't want to update the tests when you do. I don't want this implementation detail to change.