/** Test Normal on not generated existing / Marker on generated */ @Test public void testNormalNotGeneratedExisitingMarkerGenerated() { String resultContent = null; // Read initial content, final content and call Java merger try { Set<String> predefinedAnnotations = new HashSet<String>(6); predefinedAnnotations.add("javax.annotation.Resource"); predefinedAnnotations.add("Resource"); predefinedAnnotations.add("javax.xml.ws.BindingType"); predefinedAnnotations.add("BindingType"); predefinedAnnotations.add("javax.xml.bind.annotation.XmlMimeType"); predefinedAnnotations.add("XmlMimeType"); resultContent = new JavaCodeMerger(predefinedAnnotations) .merge( getFileContent(INPUT_TEST_PATH + "AnnotationUsageTestClass.java"), getFileContent(OUTPUT_TEST_PATH + "AnnotationUsageTestClass.java")); } catch (Exception e) { e.printStackTrace(); fail(e.getMessage()); } // Check the result of the merge process JavaCodeChecker jcc = new JavaCodeChecker(resultContent); String typeName = "AnnotationUsageTestClass10"; TypeChecker tc = (TypeChecker) jcc.getTypeChecker(typeName); // Test type normal annotation availability java.util.Map<String, Object> expectedContent = new java.util.HashMap<String, Object>(3); expectedContent.put("name", "foo"); assertTrue( typeName + " doesn't contain normal annotation javax.annotation.Resource", tc.isAnnotated("javax.annotation.Resource", expectedContent)); String fieldName = "annotationUsageTestField10"; FieldChecker fc = jcc.getTypeChecker(typeName).getFieldChecker(fieldName); // Test field normal annotation availability expectedContent = new java.util.HashMap<String, Object>(3); expectedContent.put("name", "foo"); assertTrue( fieldName + " doesn't contain normal annotation javax.annotation.Resource", fc.isAnnotated("javax.annotation.Resource", expectedContent)); String methodName = "annotationUsageTestMethod10"; MethodChecker mc = jcc.getTypeChecker(typeName).getMethodChecker(methodName); // Test method normal annotation availability expectedContent = new java.util.HashMap<String, Object>(3); expectedContent.put("name", "foo"); assertTrue( methodName + " doesn't contain normal annotation javax.annotation.Resource", mc.isAnnotated("javax.annotation.Resource", expectedContent)); }
/** Test Empty on not generated existing / Single Member on generated */ @Test public void testEmptyNotGeneratedExisitingSingleMemberGenerated() { String resultContent = null; // Read initial content, final content and call Java merger try { Set<String> predefinedAnnotations = new HashSet<String>(6); predefinedAnnotations.add("javax.annotation.Resource"); predefinedAnnotations.add("Resource"); predefinedAnnotations.add("javax.xml.ws.BindingType"); predefinedAnnotations.add("BindingType"); predefinedAnnotations.add("javax.xml.bind.annotation.XmlMimeType"); predefinedAnnotations.add("XmlMimeType"); resultContent = new JavaCodeMerger(predefinedAnnotations) .merge( getFileContent(INPUT_TEST_PATH + "AnnotationUsageTestClass.java"), getFileContent(OUTPUT_TEST_PATH + "AnnotationUsageTestClass.java")); } catch (Exception e) { e.printStackTrace(); fail(e.getMessage()); } // Check the result of the merge process JavaCodeChecker jcc = new JavaCodeChecker(resultContent); String typeName = "AnnotationUsageTestClass23"; TypeChecker tc = (TypeChecker) jcc.getTypeChecker(typeName); // Test type single member annotation availability assertFalse( typeName + " contains single member annotation javax.xml.ws.BindingType(\"bar\")", tc.isAnnotated("javax.xml.ws.BindingType", "bar")); String fieldName = "annotationUsageTestField23"; FieldChecker fc = jcc.getTypeChecker(typeName).getFieldChecker(fieldName); // Test field single member annotation availability assertFalse( fieldName + " contains single member annotation javax.xml.bind.annotation.XmlMimeType(\"bar\")", fc.isAnnotated("javax.xml.bind.annotation.XmlMimeType", "bar")); String methodName = "annotationUsageTestMethod23"; MethodChecker mc = jcc.getTypeChecker(typeName).getMethodChecker(methodName); // Test method single member annotation availability assertFalse( methodName + " contains single member annotation javax.xml.bind.annotation.XmlMimeType(\"bar\")", mc.isAnnotated("javax.xml.bind.annotation.XmlMimeType", "bar")); }
/** Test Single Member on existing / Empty on generated / Not predefined */ @Test public void testSingleMemberExisitingEmptyGeneratedNotPredefined() { String resultContent = null; // Read initial content, final content and call Java merger try { resultContent = new JavaCodeMerger() .merge( getFileContent(INPUT_TEST_PATH + "AnnotationUsageTestClass.java"), getFileContent(OUTPUT_TEST_PATH + "AnnotationUsageTestClass.java")); } catch (Exception e) { e.printStackTrace(); fail(e.getMessage()); } // Check the result of the merge process JavaCodeChecker jcc = new JavaCodeChecker(resultContent); String typeName = "AnnotationUsageTestClass17"; TypeChecker tc = (TypeChecker) jcc.getTypeChecker(typeName); // Test type single member annotation availability assertTrue( typeName + " doesn't contain single member annotation javax.xml.ws.BindingType(\"foo\")", tc.isAnnotated("javax.xml.ws.BindingType", "foo")); String fieldName = "annotationUsageTestField17"; FieldChecker fc = jcc.getTypeChecker(typeName).getFieldChecker(fieldName); // Test field single member annotation availability assertTrue( fieldName + " doesn't contain single member annotation javax.xml.bind.annotation.XmlMimeType(\"foo\")", fc.isAnnotated("javax.xml.bind.annotation.XmlMimeType", "foo")); String methodName = "annotationUsageTestMethod17"; MethodChecker mc = jcc.getTypeChecker(typeName).getMethodChecker(methodName); // Test method single member annotation availability assertTrue( methodName + " doesn't contain single member annotation javax.xml.bind.annotation.XmlMimeType(\"foo\")", mc.isAnnotated("javax.xml.bind.annotation.XmlMimeType", "foo")); }