### Question:
ValueBuilderTemplate { public T newInstance( ModuleDescriptor module ) { ValueBuilder<T> builder = module.instance().newValueBuilder( type ); build( builder.prototype() ); return builder.newInstance(); } protected  ValueBuilderTemplate( Class<T> type ); T newInstance( ModuleDescriptor module );  }### Answer:
@Test public void testTemplate() { new TestBuilder( "Rickard" ).newInstance( module ); }
@Test public void testAnonymousTemplate() { new ValueBuilderTemplate<TestValue>( TestValue.class ) { @Override protected void build( TestValue prototype ) { prototype.name().set( "Rickard" ); } }.newInstance( module ); }