InnerClass extends AbstractJavaType { public void addInitializationBlock(InitializationBlock initializationBlock) { initializationBlocks.add(initializationBlock); } InnerClass(FullyQualifiedJavaType type);  InnerClass(String type); Optional<FullyQualifiedJavaType> getSuperClass(); void setSuperClass(FullyQualifiedJavaType superClass); void setSuperClass(String superClassType); List<TypeParameter> getTypeParameters(); void addTypeParameter(TypeParameter typeParameter); List<InitializationBlock> getInitializationBlocks(); void addInitializationBlock(InitializationBlock initializationBlock); boolean isAbstract(); void setAbstract(boolean isAbtract); boolean isFinal(); void setFinal(boolean isFinal);  }
@Test public void testAddInitializationBlock() { InnerClass clazz = new InnerClass("com.foo.UserClass"); assertEquals(0, clazz.getInitializationBlocks().size()); clazz.addInitializationBlock(new InitializationBlock(false)); assertEquals(1, clazz.getInitializationBlocks().size()); clazz.addInitializationBlock(new InitializationBlock(true)); assertEquals(2, clazz.getInitializationBlocks().size()); }