This repository contains the video store refactoring example from Martin Fowler et al.'s Refactoring, shared with Martin's permission.
In the test
directory there is a basic acceptance test (added by Bill Wake), to cover most of the statement generation code.
You could refactor your own way, or follow along with Martin's approach in Refactoring. The code is just complex enough to justify using the "Replace Conditional with Polymorphism" refactoring.
Enjoy!
July 10, 2015. Created by Bill Wake.