Testing Outside the Box

Now we consider a test where the second letter duplicates the first. Hmm...our tests so far always use an uppercase letter followed by lowercase letters, but the algorithm shouldn’t really care. Let’s take a brief pause and implement a couple tests that deal with case considerations. (We could also choose to add to our test list and save the effort for later.)

We don’t have explicit specs for dealing with case, but part of doing TDD well is thinking outside of what we’re given. Creating a robust application requires finding answers to critical concerns that aren’t explicitly specified. (Hint: ask your customer.)

Soundex encodes similar words to the same code to allow for quick and easy comparison. Case matters not in how ...

Get Modern C++ Programming with Test-Driven Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.