Nullables Livestream #13: Database Denouement

In this weekly livestream series, I pair up with Ted M. Young, aka jitterted, to look at Nullables and A-Frame Architecture as an alternative to Mocks, Spies, and Hexagonal Architecture. Each episode combines a healthy dose of architecture and design discussion with hands-on coding.

Watch us live every Monday! For details, see the event page. For more episode recordings, see the episode archive.

Nullables Training


Learn how to apply these ideas to your own code! I’m offering live online training for this material on April 11th and 12th. Register here.

To be notified about upcoming “Testing Without Mocks” training courses, send an email with the subject “Subscribe” to or join the mailing list here (requires Google login).

For private training, contact me directly.

In this episode...

It’s a wrap! We finish our work on the database wrapper by focusing on testability. First we add output tracking, so we can easily see what’s written to the database. Next, we create a GameDatabase.createNull() factory and Embedded Stub, so our tests can prevent the wrapper from talking to the database. Part of that work involves configuring responses, including pondering the best way to simulate loading a corrupted game. We finish by looking at what’s coming up next. Can we modify the code so Ted’s GameService class is no longer needed?

Visit the episode archive for more.

If you liked this entry, check out my best writing and presentations, and consider subscribing to updates by email or RSS.