Factor out the base test case in its own module.
Reuse base test case for testing generalized/specialized models.