summaryrefslogtreecommitdiffstats
path: root/org.aspectj.ajdt.core/java5-testsrc
diff options
context:
space:
mode:
authormwebster <mwebster>2006-08-08 14:11:26 +0000
committermwebster <mwebster>2006-08-08 14:11:26 +0000
commitb8dd4360f0814cbc2d22eb5ffee25a364b1993c9 (patch)
treefad4b5c8d1cde11d43429c45e0537a11a98078c3 /org.aspectj.ajdt.core/java5-testsrc
parent039be6888f9ec674a0bbb0f5fc37486f8565fece (diff)
downloadaspectj-b8dd4360f0814cbc2d22eb5ffee25a364b1993c9.tar.gz
aspectj-b8dd4360f0814cbc2d22eb5ffee25a364b1993c9.zip
Bug 152982 "org.aspectj Restructure - Phase 2: Move tests" (move Java 5 dependent tests in AjASTTests to AjAST5Tests in java5-testsrc)
Diffstat (limited to 'org.aspectj.ajdt.core/java5-testsrc')
-rw-r--r--org.aspectj.ajdt.core/java5-testsrc/Eajc515ModuleTests.java24
-rw-r--r--org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/AjAST5Test.java158
-rw-r--r--org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/Ajc5Tests.java30
3 files changed, 212 insertions, 0 deletions
diff --git a/org.aspectj.ajdt.core/java5-testsrc/Eajc515ModuleTests.java b/org.aspectj.ajdt.core/java5-testsrc/Eajc515ModuleTests.java
new file mode 100644
index 000000000..9efd128cc
--- /dev/null
+++ b/org.aspectj.ajdt.core/java5-testsrc/Eajc515ModuleTests.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2006 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthew Webster - initial implementation
+ *******************************************************************************/
+import junit.framework.*;
+import junit.framework.Test;
+
+public class Eajc515ModuleTests extends TestCase {
+
+ public static Test suite() {
+ TestSuite suite = new TestSuite(Eajc515ModuleTests.class.getName());
+ suite.addTest(org.aspectj.tools.ajc.Ajc5Tests.suite());
+ return suite;
+ }
+
+ public Eajc515ModuleTests(String name) { super(name); }
+
+}
diff --git a/org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/AjAST5Test.java b/org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/AjAST5Test.java
new file mode 100644
index 000000000..213cf0e2c
--- /dev/null
+++ b/org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/AjAST5Test.java
@@ -0,0 +1,158 @@
+/********************************************************************
+ * Copyright (c) 2006 Contributors. All rights reserved.
+ * This program and the accompanying materials are made available
+ * under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://eclipse.org/legal/epl-v10.html
+ *
+ * Contributors: IBM Corporation - initial API and implementation
+ * Helen Hawkins - initital version
+ * Matthew Webster - moved tests
+ *******************************************************************/
+package org.aspectj.tools.ajc;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.aspectj.org.eclipse.jdt.core.dom.AST;
+import org.aspectj.org.eclipse.jdt.core.dom.AjAST;
+import org.aspectj.org.eclipse.jdt.core.dom.AjTypeDeclaration;
+import org.aspectj.org.eclipse.jdt.core.dom.AspectDeclaration;
+import org.aspectj.org.eclipse.jdt.core.dom.ChildListPropertyDescriptor;
+import org.aspectj.org.eclipse.jdt.core.dom.ChildPropertyDescriptor;
+import org.aspectj.org.eclipse.jdt.core.dom.DeclareParentsDeclaration;
+import org.aspectj.org.eclipse.jdt.core.dom.DefaultTypePattern;
+import org.aspectj.org.eclipse.jdt.core.dom.PerTypeWithin;
+import org.aspectj.org.eclipse.jdt.core.dom.SimplePropertyDescriptor;
+import org.aspectj.org.eclipse.jdt.core.dom.TypePattern;
+
+
+public class AjAST5Test extends AjASTTestCase {
+
+ public void testInternalAspectDeclaration() {
+ AjAST ajast = createAjAST();
+ AspectDeclaration d = ajast.newAspectDeclaration();
+ List props = AspectDeclaration.propertyDescriptors(AST.JLS3);
+ for (Iterator iter = props.iterator(); iter.hasNext();) {
+ Object o = iter.next();
+ if (o instanceof ChildPropertyDescriptor) {
+ ChildPropertyDescriptor element = (ChildPropertyDescriptor)o;
+ if (element.getId().equals("perClause")) {
+ assertNull("AspectDeclaration's " + element.getId() + " property" +
+ "should be null since we haven't set it yet",
+ d.getStructuralProperty(element));
+ }
+ } else if (o instanceof SimplePropertyDescriptor) {
+ SimplePropertyDescriptor element = (SimplePropertyDescriptor)o;
+ assertNotNull("AspectDeclaration's " + element.getId() + " property" +
+ "should not be null since it is a boolean",
+ d.getStructuralProperty(element));
+ }
+ }
+ for (Iterator iter = props.iterator(); iter.hasNext();) {
+ Object o = iter.next();
+ if (o instanceof ChildPropertyDescriptor) {
+ ChildPropertyDescriptor element = (ChildPropertyDescriptor) o;
+ if (element.getId().equals("perClause")) {
+ PerTypeWithin ptw = ajast.newPerTypeWithin();
+ d.setStructuralProperty(element,ptw);
+ assertEquals("AspectDeclaration's perClause property should" +
+ " now be a perTypeWithin",ptw,d.getStructuralProperty(element));
+ } else if (element.getId().equals("javadoc")) {
+ // do nothing since makes no sense to have javadoc
+ }
+ } else if (o instanceof SimplePropertyDescriptor) {
+ SimplePropertyDescriptor element = (SimplePropertyDescriptor)o;
+ if (element.getId().equals("privileged")) {
+ Boolean b = new Boolean(true);
+ d.setStructuralProperty(element,b);
+ assertEquals("AspectDeclaration's isPrivileged property should" +
+ " now be a boolean",b,d.getStructuralProperty(element));
+ }
+ }
+ }
+ }
+
+ public void testInternalAjTypeDeclaration() {
+ AjAST ajast = createAjAST();
+ AjTypeDeclaration d = ajast.newAjTypeDeclaration();
+ List props = AjTypeDeclaration.propertyDescriptors(AST.JLS3);
+ for (Iterator iter = props.iterator(); iter.hasNext();) {
+ Object o = iter.next();
+ if (o instanceof SimplePropertyDescriptor) {
+ SimplePropertyDescriptor element = (SimplePropertyDescriptor) o;
+ if (element.getId().equals("aspect")) {
+ assertNotNull("AjTypeDeclaration's " + element.getId() + " property" +
+ " should not be null since it is a boolean",
+ d.getStructuralProperty(element));
+ }
+ }
+ }
+ for (Iterator iter = props.iterator(); iter.hasNext();) {
+ Object o = iter.next();
+ if (o instanceof SimplePropertyDescriptor) {
+ SimplePropertyDescriptor element = (SimplePropertyDescriptor) o;
+ if (element.getId().equals("aspect")) {
+ Boolean b = new Boolean(true);
+ d.setStructuralProperty(element,b);
+ assertEquals("AjTypeDeclaration's aspect property should" +
+ " now be a SignaturePattern",b,d.getStructuralProperty(element));
+ }
+ }
+ }
+ }
+
+ public void testInternalDeclareParentsDeclaration() {
+ AjAST ajast = createAjAST();
+ DeclareParentsDeclaration d = ajast.newDeclareParentsDeclaration();
+ List props = DeclareParentsDeclaration.propertyDescriptors(AST.JLS3);
+ for (Iterator iter = props.iterator(); iter.hasNext();) {
+ Object o = iter.next();
+ if (o instanceof ChildPropertyDescriptor) {
+ ChildPropertyDescriptor element = (ChildPropertyDescriptor)o;
+ assertNull("DeclareParentsDeclaration's " + element.getId() + " property" +
+ "should be null since we haven't set it yet",
+ d.getStructuralProperty(element));
+ } else if (o instanceof ChildListPropertyDescriptor) {
+ ChildListPropertyDescriptor element = (ChildListPropertyDescriptor)o;
+ assertNotNull("DeclareParentsDeclaration's " + element.getId() + " property" +
+ "should not be null since it is a list",
+ d.getStructuralProperty(element));
+ assertEquals("should only be able to put TypePattern's into the list",
+ TypePattern.class,element.getElementType());
+ } else if (o instanceof SimplePropertyDescriptor) {
+ SimplePropertyDescriptor element = (SimplePropertyDescriptor)o;
+ assertNotNull("DeclareParentsDeclaration's " + element.getId() + " property" +
+ "should not be null since it is a boolean",
+ d.getStructuralProperty(element));
+ } else {
+ fail("unknown PropertyDescriptor associated with DeclareParentsDeclaration: " + o);
+ }
+ }
+ for (Iterator iter = props.iterator(); iter.hasNext();) {
+ Object o = iter.next();
+ if (o instanceof ChildPropertyDescriptor) {
+ ChildPropertyDescriptor element = (ChildPropertyDescriptor) o;
+ if (element.getId().equals("childTypePattern")) {
+ DefaultTypePattern dtp = ajast.newDefaultTypePattern();
+ d.setStructuralProperty(element,dtp);
+ assertEquals("DeclareParentsDeclaration's typePattern property should" +
+ " now be a DefaultTypePattern",dtp,d.getStructuralProperty(element));
+ } else if (element.getId().equals("javadoc")) {
+ // do nothing since makes no sense to have javadoc
+ } else {
+ fail("unknown property for DeclareParentsDeclaration");
+ }
+ } else if (o instanceof SimplePropertyDescriptor) {
+ SimplePropertyDescriptor element = (SimplePropertyDescriptor)o;
+ if (element.getId().equals("isExtends")) {
+ Boolean b = new Boolean(true);
+ d.setStructuralProperty(element,b);
+ assertEquals("DeclareParentsDeclaration's isExtends property should" +
+ " now be a boolean",b,d.getStructuralProperty(element));
+ }
+ }
+ }
+ }
+
+}
diff --git a/org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/Ajc5Tests.java b/org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/Ajc5Tests.java
new file mode 100644
index 000000000..44bdc76eb
--- /dev/null
+++ b/org.aspectj.ajdt.core/java5-testsrc/org/aspectj/tools/ajc/Ajc5Tests.java
@@ -0,0 +1,30 @@
+/* *******************************************************************
+ * Copyright (c) 2005 Contributors.
+ * All rights reserved.
+ * This program and the accompanying materials are made available
+ * under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution and is available at
+ * http://eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Matthew Webster initial implementation
+ * ******************************************************************/
+package org.aspectj.tools.ajc;
+
+import org.aspectj.testing.util.TestUtil;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+public class Ajc5Tests extends TestCase {
+ public static String aspectjrtClasspath() {
+ return TestUtil.aspectjrtPath().getPath();
+ }
+ public static Test suite() {
+ TestSuite suite = new TestSuite(Ajc5Tests.class.getName());
+ suite.addTestSuite(AjAST5Test.class);
+ return suite;
+ }
+
+}