private void checkJCompUnit() { JCompUnit unit = new JCompUnit("com.acme", "JCompUnitTest.java"); JClass testClass = new JClass("Test"); testClass.addImport("java.util.Vector"); testClass.addMember(new JField(JType.INT, "x")); JField field = null; field = new JField(JType.INT, "_z"); field.getModifiers().setStatic(true); testClass.addField(field); testClass.getStaticInitializationCode().add("_z = 75;"); JClass jcString = new JClass("String"); field = new JField(jcString, "myString"); field.getModifiers().makePrivate(); testClass.addMember(field); // -- create constructor JConstructor cons = testClass.createConstructor(); testClass.addConstructor(cons); cons.getSourceCode().add("this.x = 6;"); JMethod jMethod = new JMethod("getX", JType.INT, null); jMethod.setSourceCode("return this.x;"); testClass.addMethod(jMethod); unit.addClass(testClass); JClass fooClass = new JClass("Foo"); unit.addClass(fooClass); unit.print(getOutputDirectory().toString(), null); assertTrue(new File(getOutputDirectory(), "com/acme/JCompUnitTest.java").exists()); }
private void checkJClass() { JClass testClass = new JClass("org.acme.JClassTest"); testClass.addSourceCode("// source code"); testClass.addSourceCode("// source code 2"); testClass.addImport("java.util.Vector"); testClass.appendAnnotation("@SuppressWarnings( \"all\" )"); testClass.appendAnnotation("@Deprecated"); testClass.addMember(new JField(JType.INT, "x")); JClass jcString = new JClass("String"); JField field = null; field = new JField(JType.INT, "_z"); field.appendAnnotation("@Deprecated"); field.getModifiers().setStatic(true); testClass.addField(field); testClass.getStaticInitializationCode().add("_z = 75;"); field = new JField(jcString, "myString"); field.getModifiers().makePrivate(); testClass.addMember(field); // generics test JType type = new JCollectionType("java.util.List", jcString, true); field = new JField(type, "generics"); testClass.addMember(field); type = new JCollectionType("java.util.List", jcString, false); field = new JField(type, "noGenerics"); testClass.addMember(field); // -- create constructor JConstructor cons = testClass.createConstructor(); cons.appendAnnotation("@Deprecated"); cons.getSourceCode().add("this.x = 6;"); JMethod jMethod = new JMethod("getX", JType.INT, null); jMethod.appendAnnotation("@Deprecated"); jMethod.setSourceCode("return this.x;"); testClass.addMethod(jMethod); jMethod = new JMethod("setX", null, null); JParameter param = new JParameter(JType.INT, "x"); jMethod.addParameter(param); jMethod.setSourceCode("this.x = x;"); testClass.addMethod(jMethod); jMethod = new JMethod("checkParameterAnotation", JType.INT, null); param = new JParameter(JType.LONG, "param"); param.appendAnnotation("@Test"); param.appendAnnotation("@Test2"); jMethod.addParameter(param); jMethod.setSourceCode("return param;"); testClass.addMethod(jMethod); // -- create inner-class JClass innerClass = testClass.createInnerClass("Foo"); innerClass.appendAnnotation("@Deprecated"); innerClass.addImport("java.util.Hashtable"); innerClass.addMember(new JField(JType.INT, "_type")); field = new JField(jcString, "_name"); field.getModifiers().makePrivate(); innerClass.addMember(field); testClass.createInnerClass("Bar"); // -- create constructor cons = innerClass.createConstructor(); cons.getSourceCode().add("_name = \"foo\";"); jMethod = new JMethod("getName", jcString, null); jMethod.setSourceCode("return _name;"); innerClass.addMethod(jMethod); testClass.print(getOutputDirectory().toString(), null); assertTrue(new File(getOutputDirectory(), "org/acme/JClassTest.java").exists()); }