For this TDD example, we are going to use the same project we created at the beginning of this chapter. Open the FirstDemo project in Xcode, and run the tests by hitting command + U. The one existing test should pass.
Let's say we are building an app for a blogging platform. When writing a new post, the user puts in a headline for the post. All the words in the headline should start with an uppercase letter.
To start the TDD workflow, we need a failing test. The following questions need to be considered when writing the test:
- Precondition: What is the state of the system before we invoke the method?
- Invocation: How should the signature of the method look? What are the input parameters (if any) of the method?