making TestCase generic