Unit testing your code
Unit tests are blocks of code that verify the correct output of one small part of your code (a unit) at a time, such as an individual function or class. D has a built-in support for basic unit testing. Here, we'll see what we can do with it.
How to do it…
Perform the following steps:
Add
unittest {}
blocks to your modules, under your functions and inside your classes.Put any
imports
needed by the test inside theunittest
block.You should write helper function and class definitions inside the
unittest
block.Write assertions to perform your tests.
Use
std.exception
for additional helper functions.Compile with
dmd –unittest yourfiles.d
.Run the program.
Tip
Design your classes with dependency injection for easier mocking of tests. This is when instead of constructing child objects yourself, you accept them as arguments to the constructor. The unit test may then pass a dummy object to the class instead of, for example, a live network connection to test the code.
Consider the following...