4.5 Inspecting Privates
New test-drivers inevitably ask two questions: Is it OK to write tests against private member data? What about private member functions? These are two related but distinct topics that both relate to design choices you must make.
Private Data
The Tell-Don’t-Ask design concept says that you should tell an object to do something and let that object go off and complete its work. If you ask lots of questions of the object, you’re violating Tell-Don’t-Ask. A system consisting of excessive queries to other objects will be entangled and complex. Client C asks an object S for information, does some work that’s possibly a responsibility S could take on, asks another question of S, and so on, creating a tight interaction between ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access