Unit testing
The goal of unit testing is to isolate each part of the program and show that the individual parts function properly. RubyMotion uses MacBacon, which is an iOS flavor of Bacon.
Note
Bacon is a smaller clone of RSpec. With less than 350 LOCs, we nevertheless get all the essential features.
Here, we will also follow Test Driven Development (TDD), a way of working where unit tests are created before the code itself is written. Of course, the tests will fail initially because we don't have anything. That's the philosophy of TDD; first we write the test case, it fails, we then refractor our code and once again write the feature code, and this time our test cases pass and the code is considered complete.
The idea here is that the developer himself wears the hat of a tester. We first document the feature in the form of a test, which fails, then we write our code and refractor, and once again document with a test case for the next feature.
First, let's create an application, which we will...