/* ******************************************************************* * Copyright (c) 2004 IBM Corporation * All rights reserved. * This program and the accompanying materials are made available * under the terms of the Eclipse Public License v 2.0 * which accompanies this distribution and is available at * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt * * ******************************************************************/ package org.aspectj.systemtest.knownlimitations; import org.aspectj.testing.XMLBasedAjcTestCase; import junit.framework.Test; public class KnownLimitationsTests extends org.aspectj.testing.XMLBasedAjcTestCase { public static Test suite() { return XMLBasedAjcTestCase.loadSuite(KnownLimitationsTests.class); } protected java.net.URL getSpecFile() { return getClassResource("knownLimitations.xml"); // return new File("../tests/src/org/aspectj/systemtest/knownlimitations/knownlimitations.xml"); } public void test001(){ runTest("DEPRECATED: introduce of variables"); } public void test002(){ runTest("checking the contra-variant errors for typing of proceed"); } public void test003(){ runTest("introduction of static methods and fields on classes and interfaces"); } public void test004(){ runTest("advice on catch clauses"); } public void test005(){ runTest("holding onto proceed calls in a closure-like way"); } public void test006(){ runTest("PR#458 Compiler was incorrectly flagging error in advice on initialization and static initialization"); } public void test007(){ runTest("Introduced type unavailable to instanceof expressions in introduced methods"); } public void test008(){ runTest("enclosing join point not exported properly in pre-initialization join point"); } public void test009(){ runTest("cyclic pointcut definitions"); } public void test010(){ runTest("package typepattern with no packages (in default package)"); } public void test011(){ runTest("flag errors when binding args with indeterminate prefix and suffix"); } public void test012(){ runTest("around and return types + inlining optimizations"); } public void test013(){ runTest("source locations within expressions (hard case of constructor start)"); } public void test014(){ runTest("declaring method on superclass and subclass"); } public void test015(){ runTest("illegal name binding in around cflow"); } public void test016(){ runTest("incrementally change string size and wire in injar classes"); } public void test017(){ runTest("before():execution(new(..)) does not throw NoAspectBoundException"); } public void test018(){ runTest("declare error on handler/method execution with no code on binary ajc 1.1 classes"); } public void test019(){ runTest("declare error on handler/method execution with no code on binary javac 1.4 classes"); } public void test020(){ runTest("CLE: -help usage"); } public void test021(){ runTest("declare warnings on main - constructor execution"); } public void test022(){ runTest("declare warnings on binary javac 1.4 main - constructor execution"); } public void test023(){ runTest("declare warnings on binary ajc 1.1 main - constructor execution"); } public void test024(){ runTest("advice on handler join points should not throw unpermitted checked exceptions"); } public void test025(){ runTest("-nowarn suppresses XLint warnings"); } public void test026(){ runTest("warn:none suppresses XLint warnings"); } public void test027(){ runTest("-nowarn suppresses declare warnings"); } public void test028(){ runTest("-warn:none suppresses declare warnings"); } public void test029(){ runTest("insertion of lots of advice code can make branch offset for if too large"); } }