In this complete example we create an application to perform some calculations. Then we will create unit tests to compare two classes. We will also compare two dates, integers, BigIntegers, floats and strings. To make things easy, we'll create a test suite that runs all the unit tests.
To begin our development we're going to create the unit tests first. That's called test-driven development. We'll write code that fails the test and fix that code so it passes. If we develop the tests correctly then the application will write itself.