GeneratorTestTemplate and GeneratorTemplate should be sealed abstract class