This is sort of gross naming, because the value type "owned" by the factory is this outer class that is named for the test... which includes the word factory.  It would probably make the test case vastly easier to have a static inner factory-managed type.