In the previous chapter, we built a service locator and dependency injection container, so that we can share parts of our framework without excess boilerplate.
In this chapter, we’re going to learn how to test that new code and how to generally structure our application and tests so that they give us the most benefit for the time we put into them.
Between the Chapters…
I want to quickly touch on some of the changes I made since the last chapter. The dependency injection container is a powerful tool because it cuts down on the repetition of code and makes ...