diff options
author | kmoore | 2008-04-07 15:21:21 +0000 |
---|---|---|
committer | kmoore | 2008-04-07 15:21:21 +0000 |
commit | 10e8acb5daee2c57374830717b7eb0e25416f18b (patch) | |
tree | 5cc88d79eba022facf793bcae79dcfdf688b397f /jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource | |
parent | a55f070372bd54a31161dfc478b28b327ef4701a (diff) | |
download | webtools.dali-10e8acb5daee2c57374830717b7eb0e25416f18b.tar.gz webtools.dali-10e8acb5daee2c57374830717b7eb0e25416f18b.tar.xz webtools.dali-10e8acb5daee2c57374830717b7eb0e25416f18b.zip |
223418- begin cleaning things up so we can move to using the ast model instead of the jdt model
Diffstat (limited to 'jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource')
2 files changed, 28 insertions, 10 deletions
diff --git a/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentAttributeTests.java b/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentAttributeTests.java index 5694028898..5553df00e2 100644 --- a/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentAttributeTests.java +++ b/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentAttributeTests.java @@ -24,6 +24,8 @@ import org.eclipse.jpt.core.resource.java.JavaResourceNode; import org.eclipse.jpt.core.resource.java.JavaResourcePersistentAttribute; import org.eclipse.jpt.core.resource.java.JavaResourcePersistentType; import org.eclipse.jpt.core.resource.java.OneToManyAnnotation; +import org.eclipse.jpt.core.utility.jdt.ModifiedDeclaration; +import org.eclipse.jpt.core.utility.jdt.Member.Editor; import org.eclipse.jpt.utility.internal.ClassTools; import org.eclipse.jpt.utility.internal.CollectionTools; import org.eclipse.jpt.utility.internal.iterators.ArrayIterator; @@ -529,19 +531,26 @@ public class JavaResourcePersistentAttributeTests extends JavaResourceModelTestC assertSourceDoesNotContain("@Column"); } - //update source code to change from @Id to @OneToOne and make sure @Column is not removed public void testChangeAttributeMappingInSource() throws Exception { IType jdtType = createTestEntityAnnotatedField(); JavaResourcePersistentType typeResource = buildJavaTypeResource(jdtType); - JavaResourcePersistentAttribute attributeResource = typeResource.fields().next(); + final JavaResourcePersistentAttribute attributeResource = typeResource.fields().next(); - idField().removeAnnotation(((IdImpl) attributeResource.getMappingAnnotation()).getDeclarationAnnotationAdapter()); - + idField().edit(new Editor() { + public void edit(ModifiedDeclaration declaration) { + ((IdImpl) attributeResource.getMappingAnnotation()).getDeclarationAnnotationAdapter().removeAnnotation(declaration); + } + }); + this.createAnnotationAndMembers("OneToOne", ""); jdtType.getCompilationUnit().createImport("javax.persistence.OneToOne", null, new NullProgressMonitor()); - idField().newMarkerAnnotation(OneToOneImpl.DECLARATION_ANNOTATION_ADAPTER); + idField().edit(new Editor() { + public void edit(ModifiedDeclaration declaration) { + OneToOneImpl.DECLARATION_ANNOTATION_ADAPTER.newMarkerAnnotation(declaration); + } + }); assertNotNull(attributeResource.getAnnotation(JPA.COLUMN)); assertNull(attributeResource.getMappingAnnotation(JPA.ID)); diff --git a/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentTypeTests.java b/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentTypeTests.java index dba770bb85..d45678d60c 100644 --- a/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentTypeTests.java +++ b/jpa/tests/org.eclipse.jpt.core.tests/src/org/eclipse/jpt/core/tests/internal/resource/java/JavaResourcePersistentTypeTests.java @@ -25,6 +25,8 @@ import org.eclipse.jpt.core.resource.java.JavaResourcePersistentType; import org.eclipse.jpt.core.resource.java.MappedSuperclassAnnotation; import org.eclipse.jpt.core.resource.java.SecondaryTableAnnotation; import org.eclipse.jpt.core.resource.java.TableAnnotation; +import org.eclipse.jpt.core.utility.jdt.ModifiedDeclaration; +import org.eclipse.jpt.core.utility.jdt.Member.Editor; import org.eclipse.jpt.utility.internal.ClassTools; import org.eclipse.jpt.utility.internal.CollectionTools; import org.eclipse.jpt.utility.internal.iterators.ArrayIterator; @@ -616,18 +618,25 @@ public class JavaResourcePersistentTypeTests extends JavaResourceModelTestCase { assertSourceDoesNotContain("@Table"); } - //update source code to change from @Entity to @Embeddable and make sure @Table is not removed public void testChangeTypeMappingInSource() throws Exception { IType jdtType = createTestEntityWithTable(); - JavaResourcePersistentType typeResource = buildJavaTypeResource(jdtType); + final JavaResourcePersistentType typeResource = buildJavaTypeResource(jdtType); - testType().removeAnnotation(((EntityImpl) typeResource.getMappingAnnotation()).getDeclarationAnnotationAdapter()); + testType().edit(new Editor() { + public void edit(ModifiedDeclaration declaration) { + ((EntityImpl) typeResource.getMappingAnnotation()).getDeclarationAnnotationAdapter().removeAnnotation(declaration); + } + }); this.createAnnotationAndMembers("Embeddable", "String name();"); jdtType.getCompilationUnit().createImport("javax.persistence.Embeddable", null, new NullProgressMonitor()); - - testType().newMarkerAnnotation(EmbeddableImpl.DECLARATION_ANNOTATION_ADAPTER); + + testType().edit(new Editor() { + public void edit(ModifiedDeclaration declaration) { + EmbeddableImpl.DECLARATION_ANNOTATION_ADAPTER.newMarkerAnnotation(declaration); + } + }); assertNotNull(typeResource.getAnnotation(JPA.TABLE)); assertNull(typeResource.getMappingAnnotation(JPA.ENTITY)); |