@Test public void testProduceReturnsOutputWithGenerationGap2() { // Given: String pojoClassname = testdata.generationgap.Order.class.getName(); TypeElement pojoTypeElement = elements.getTypeElement(pojoClassname); // When: Output output = underTest.produce(new Input(pojoTypeElement)); BuilderM builder = output.getBuilder(); ManualBuilderM manualBuilder = output.getManualBuilder(); // Then: assertEquals("type", TypeM.get("testdata.generationgap.OrderBuilder"), manualBuilder.getType()); assertEquals( "type.generic", "OrderBuilder<T extends Object>", manualBuilder.getType().getGenericTypeSimpleNameWithBounds()); assertEquals( "superType", TypeM.get("testdata.generationgap.AbstractOrderBuilder"), manualBuilder.getSuperType()); assertEquals( "type", TypeM.get("testdata.generationgap.AbstractOrderBuilder"), builder.getType()); assertEquals( "type.generic", "AbstractOrderBuilder<T extends Object>", builder.getType().getGenericTypeSimpleNameWithBounds()); assertEquals("superType", TypeM.get(Object.class.getName()), builder.getSuperType()); }
@Test public void testProduceReturnsBuilderWithCorrectSuperType() { // Given: String pojoClassname = Contact.class.getName(); TypeElement pojoType = elements.getTypeElement(pojoClassname); // When: Output output = underTest.produce(new Input(pojoType)); BuilderM builder = output.getBuilder(); // Then: assertEquals("type", TypeM.get(Object.class.getName()), builder.getSuperType()); }
@Test public void testProduceReturnsOutputWithGenerationGap1() { // Given: String pojoClassname = testdata.generationgap.Contact.class.getName(); TypeElement pojoTypeElement = elements.getTypeElement(pojoClassname); // When: Output output = underTest.produce(new Input(pojoTypeElement)); BuilderM builder = output.getBuilder(); ManualBuilderM manualBuilder = output.getManualBuilder(); // Then: assertEquals( "type", TypeM.get("testdata.generationgap.ContactBuilder"), manualBuilder.getType()); assertEquals( "superType", TypeM.get("testdata.generationgap.AbstractContactBuilder"), manualBuilder.getSuperType()); assertEquals( "type", TypeM.get("testdata.generationgap.AbstractContactBuilder"), builder.getType()); assertEquals("superType", TypeM.get(Object.class.getName()), builder.getSuperType()); }