123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026 |
- /*******************************************************************************
- * Copyright (c) 2004 IBM
- * 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
- *
- * Contributors:
- * Andy Clement - initial API and implementation
- *******************************************************************************/
- package org.aspectj.systemtest.ajc150;
-
- import java.io.ByteArrayOutputStream;
- import java.io.IOException;
- import java.io.PrintWriter;
-
- import org.aspectj.apache.bcel.classfile.JavaClass;
- import org.aspectj.apache.bcel.classfile.Method;
- import org.aspectj.apache.bcel.classfile.Signature;
- import org.aspectj.asm.AsmManager;
- import org.aspectj.testing.XMLBasedAjcTestCase;
-
- import junit.framework.Test;
-
- public class Ajc150Tests extends org.aspectj.testing.XMLBasedAjcTestCase {
-
- public static Test suite() {
- return XMLBasedAjcTestCase.loadSuite(Ajc150Tests.class);
- }
-
- protected java.net.URL getSpecFile() {
- return getClassResource("ajc150.xml");
- }
-
- public void testMixingCodeStyles_pr121385() {
- runTest("mixing aspect styles");
- }
-
- public void testTypeVars_pr121575() {
- runTest("different numbers of type vars");
- }
-
- public void testTypeVars_pr121575_2() {
- runTest("different numbers of type vars - 2");
- }
-
- public void testTypeVars_pr121575_3() {
- runTest("different numbers of type vars - 3");
- }
-
- public void testTypeVars_pr121575_4() {
- runTest("different numbers of type vars - 4");
- }
-
- public void testDecps1() {
- runTest("decps - 1");
- }
-
- public void testDecps1b() {
- runTest("decps - 1b");
- }
-
- public void testDecps2() {
- runTest("decps - 2");
- }
-
- public void testDecps2b() {
- runTest("decps - 2b");
- }
-
- public void testDecps3() {
- runTest("decps - 3");
- }
-
- public void testDecps3b() {
- runTest("decps - 3b");
- }
-
- public void testDecps3c() {
- runTest("decps - 3c");
- }
-
- public void testVarargsNPE_pr120826() {
- runTest("varargs NPE");
- }
-
- public void testNamedPointcutPertarget_pr120521() {
- runTest("named pointcut not resolved in pertarget pointcut");
- }
-
- public void testDollarClasses_pr120474() {
- runTest("Dollar classes");
- }
-
- public void testGenericPTW_pr119539_1() {
- runTest("generic pertypewithin aspect - 1");
- }
-
- public void testGenericPTW_pr119539_2() {
- runTest("generic pertypewithin aspect - 2");
- }
-
- public void testGenericPTW_pr119539_3() {
- runTest("generic pertypewithin aspect - 3");
- }
-
- /*
- * public void testBrokenDispatchByITD_pr72834() { runTest("broken dispatch");} public void testMissingAccessor_pr73856() {
- * runTest("missing accessor");} public void testCunningDeclareParents_pr92311() { runTest("cunning declare parents");} public
- * void testGenericITDsAndAbstractMethodError_pr102357() { runTest("generic itds and abstract method error");}
- */
- public void testIncorrectSignatureMatchingWithExceptions_pr119749() {
- runTest("incorrect exception signature matching");
- }
-
- public void testGeneratingCodeForAnOldRuntime_pr116679_1() {
- runTest("generating code for a 1.2.1 runtime - 1");
- }
-
- public void testGeneratingCodeForAnOldRuntime_pr116679_2() {
- runTest("generating code for a 1.2.1 runtime - 2");
- }
-
- public void testAmbiguousMethod_pr118599_1() {
- runTest("ambiguous method when binary weaving - 1");
- }
-
- public void testAmbiguousMethod_pr118599_2() {
- runTest("ambiguous method when binary weaving - 2");
- }
-
- public void testAroundAdviceArrayAdviceSigs_pr118781() {
- runTest("verify error with around advice array sigs");
- }
-
- public void testAtDeclareParents_pr117681() {
- runTest("at declare parents");
- }
-
- public void testPrivilegeProblem_pr87525() {
- runTest("privilege problem with switch");
- }
-
- public void testRangeProblem_pr109614() {
- runTest("Range problem");
- }
-
- public void testGenericAspects_pr115237() {
- runTest("aspectOf and generic aspects");
- }
-
- public void testClassFormatError_pr114436() {
- runTest("ClassFormatError binary weaving perthis");
- }
-
- public void testParserException_pr115788() {
- runTest("parser exception");
- }
-
- public void testPossibleStaticImports_pr113066_1() {
- runTest("possible static imports bug - 1");
- }
-
- public void testPossibleStaticImports_pr113066_2() {
- runTest("possible static imports bug - 2");
- }
-
- public void testPossibleStaticImports_pr113066_3() {
- runTest("possible static imports bug - 3");
- }
-
- public void testITDCtor_pr112783() {
- runTest("Problem with constructor ITDs");
- }
-
- public void testAnnotatedITDFs_pr114005_1() {
- runTest("Annotated ITDFs - 1");
- }
-
- public void testAnnotatedITDFs_pr114005_2() {
- runTest("Annotated ITDFs - 2");
- }
-
- public void testCantCallSuperMethods_pr90143() {
- runTest("cant call super methods");
- }
-
- public void testBrokenDecp_pr112476() {
- runTest("binary weaving decp broken");
- }
-
- public void testUnboundFormal_pr112027() {
- runTest("unexpected error unboundFormalInPC");
- }
-
- public void testNPEScopeSetup_pr115038() {
- runTest("NPE in ensureScopeSetup");
- }
-
- public void testCCEGenerics_pr113445() {
- runTest("Generics ClassCastException");
- }
-
- public void testMatthewsAspect_pr113947_1() {
- runTest("maws generic aspect - 1");
- }
-
- public void testMatthewsAspect_pr113947_2() {
- runTest("maws generic aspect - 2");
- }
-
- public void testFieldGet_pr114343() {
- runTest("field-get, generics and around advice");
- }
-
- public void testFieldGet_pr114343_2() {
- runTest("field-get, generics and around advice - 2");
- }
-
- public void testFieldGet_pr114343_3() {
- runTest("field-get, generics and around advice - 3");
- }
-
- public void testCaptureBinding_pr114744() {
- runTest("capturebinding wildcard problem");
- }
-
- public void testAutoboxingAroundAdvice_pr119210_1() {
- runTest("autoboxing around advice - 1");
- }
-
- public void testAutoboxingAroundAdvice_pr119210_2() {
- runTest("autoboxing around advice - 2");
- }
-
- public void testAutoboxingAroundAdvice_pr119210_3() {
- runTest("autoboxing around advice - 3");
- }
-
- public void testBadDecp_pr110788_1() {
- runTest("bad generic decp - 1");
- }
-
- public void testBadDecp_pr110788_2() {
- runTest("bad generic decp - 2");
- }
-
- public void testBadDecp_pr110788_3() {
- runTest("bad generic decp - 3");
- }
-
- public void testBadDecp_pr110788_4() {
- runTest("bad generic decp - 4");
- }
-
- // public void testSimplifiedGenericAspectITDTest() { runTest("spurious override method warning - 3");}
- // public void testSpuriousOverrideMethodWarning_pr119570_1() { runTest("spurious override method warning");}
- // public void testSpuriousOverrideMethodWarning_pr119570_2() { runTest("spurious override method warning - 2");}
-
- public void testBrokenSwitch_pr117854() {
- runTest("broken switch transform");
- }
-
- public void testVarargsITD_pr110906() {
- runTest("ITD varargs problem");
- }
-
- public void testBadRenderer_pr86903() {
- runTest("bcelrenderer bad");
- }
-
- // public void testIllegalInitialization_pr118326_1() { runTest("illegal initialization - 1");}
- // public void testIllegalInitialization_pr118326_2() { runTest("illegal initialization - 2");}
- public void testLintForAdviceSorting_pr111667() {
- runTest("lint for advice sorting");
- }
-
- public void testIncompatibleClassChangeError_pr113630_1() {
- runTest("IncompatibleClassChangeError - errorscenario");
- }
-
- public void testIncompatibleClassChangeError_pr113630_2() {
- runTest("IncompatibleClassChangeError - workingscenario");
- }
-
- public void testFieldGetProblemWithGenericField_pr113861() {
- runTest("field-get problems with generic field");
- }
-
- public void testAccesstoPrivateITDInNested_pr118698() {
- runTest("access to private ITD from nested type");
- }
-
- public void testDeclareAnnotationOnNonExistentType_pr99191_1() {
- runTest("declare annotation on non existent type - 1");
- }
-
- public void testDeclareAnnotationOnNonExistentType_pr99191_2() {
- runTest("declare annotation on non existent type - 2");
- }
-
- public void testDeclareAnnotationOnNonExistentType_pr99191_3() {
- runTest("declare annotation on non existent type - 3");
- }
-
- public void testDeclareAnnotationOnNonExistentType_pr99191_4() {
- runTest("declare annotation on non existent type - 4");
- }
-
- public void testDeclareAnnotationOnNonExistentType_pr99191_5() {
- runTest("declare annotation on non existent type - 5");
- }
-
- public void testBadGenericSigAttribute_pr110927() {
- runTest("cant create signature attribute");
- Signature sig = GenericsTests.getClassSignature(ajc, "I");
- if (sig == null)
- fail("Couldn't find signature attribute for type I");
- String sigString = sig.getSignature();
- if (!(sigString.equals("Ljava/lang/Object;LIE2;LIE1<Ljava/lang/String;>;") || sigString
- .equals("Ljava/lang/Object;LIE1<Ljava/lang/String;>;LIE2;"))) {
- fail("Signature was " + sigString
- + " when should have been something like Ljava/lang/Object;LIE1<Ljava/lang/String;>;LIE2;");
- }
- }
-
- public void test_typeProcessingOrderWhenDeclareParents() {
- runTest("Order of types passed to compiler determines weaving behavior");
- }
-
- public void test_aroundMethod() {
- runTest("method called around in class");
- }
-
- public void test_aroundMethodAspect() {
- runTest("method called around in aspect");
- }
-
- public void test_ambiguousBindingsDetection() {
- runTest("Various kinds of ambiguous bindings");
- }
-
- public void test_ambiguousArgsDetection() {
- runTest("ambiguous args");
- }
-
- public void testIncorrectExceptionTableWhenBreakInMethod_pr78021() {
- runTest("Injecting exception into while loop with break statement causes catch block to be ignored");
- }
-
- public void testIncorrectExceptionTableWhenReturnInMethod_pr79554() {
- runTest("Return in try-block disables catch-block if final-block is present");
- }
-
- public void testMissingDebugInfoForGeneratedMethods_pr82570() throws ClassNotFoundException {
- runTest("Weaved code does not include debug lines");
- boolean f = false;
- JavaClass jc = getClassFrom(ajc.getSandboxDirectory(), "PR82570_1");
- Method[] meths = jc.getMethods();
- for (Method method : meths) {
- if (f)
- System.err.println("Line number table for " + method.getName() + method.getSignature() + " = "
- + method.getLineNumberTable());
- assertTrue("Didn't find a line number table for method " + method.getName() + method.getSignature(),
- method.getLineNumberTable() != null);
- }
-
- // This test would determine the info isn't there if you pass -g:none ...
- // cR = ajc(baseDir,new String[]{"PR82570_1.java","-g:none"});
- // assertTrue("Expected no compile problem:"+cR,!cR.hasErrorMessages());
- // System.err.println(cR.getStandardError());
- // jc = getClassFrom(ajc.getSandboxDirectory(),"PR82570_1");
- // meths = jc.getMethods();
- // for (int i = 0; i < meths.length; i++) {
- // Method method = meths[i];
- // assertTrue("Found a line number table for method "+method.getName(),
- // method.getLineNumberTable()==null);
- // }
- }
-
- public void testCanOverrideProtectedMethodsViaITDandDecp_pr83303() {
- runTest("compiler error when mixing inheritance, overriding and polymorphism");
- }
-
- public void testPerTypeWithin_pr106554() {
- runTest("Problem in staticinitialization with pertypewithin aspect");
- }
-
- public void testPerTypeWithinMissesNamedInnerTypes() {
- runTest("pertypewithin() handing of inner classes (1)");
- }
-
- public void testPerTypeWithinMissesAnonymousInnerTypes() {
- runTest("pertypewithin() handing of inner classes (2)");
- }
-
- public void testPerTypeWithinIncorrectlyMatchingInterfaces() {
- runTest("pertypewithin({interface}) illegal field modifier");
- }
-
- public void test051_arrayCloningInJava5() {
- runTest("AJC possible bug with static nested classes");
- }
-
- public void testBadASMforEnums() throws IOException {
- runTest("bad asm for enums");
-
- ByteArrayOutputStream baos = new ByteArrayOutputStream();
- PrintWriter pw = new PrintWriter(baos);
- AsmManager.dumptree(pw, AsmManager.lastActiveStructureModel.getHierarchy().getRoot(), 0);
- pw.flush();
- String tree = baos.toString();
- assertTrue("Expected 'Red [enumvalue]' somewhere in here:" + tree, tree.contains("Red [enumvalue]"));
- }
-
- public void npeOnTypeNotFound() {
- runTest("structure model npe on type not found");
- }
-
- public void testNoRuntimeExceptionSoftening() {
- runTest("declare soft of runtime exception");
- }
-
- public void testRuntimeNoSoftenWithHandler() {
- runTest("declare soft w. catch block");
- }
-
- public void testSyntaxError() {
- runTest("invalid cons syntax");
- }
-
- public void testVarargsInConsBug() {
- runTest("varargs in constructor sig");
- }
-
- public void testAspectpathdirs() {
- runTest("dirs on aspectpath");
- }
-
- public void testIntroSample() {
- runTest("introduction sample");
- }
-
- public void testPTWInterface() {
- runTest("pertypewithin({interface}) illegal field modifier");
- }
-
- public void testEnumCalledEnumEtc() {
- runTest("enum called Enum, annotation called Annotation, etc");
- }
-
- public void testInternalCompilerError_pr86832() {
- runTest("Internal compiler error");
- }
-
- public void testCloneMethod_pr83311() {
- runTest("overriding/polymorphism error on interface method introduction");
- }
-
- // IfPointcut.findResidueInternal() was modified to make this test complete in a short amount
- // of time - if you see it hanging, someone has messed with the optimization.
- public void testIfEvaluationExplosion_pr94086() {
- runTest("Exploding compile time with if() statements in pointcut");
- }
-
- public void testReflectNPE_pr94167() {
- runTest("NPE in reflect implementation");
- }
-
- public void testStaticImports_pr84260() {
- runTest("static import failures");
- }
-
- public void testGenerics_pr99089() {
- runTest("ArrayIndexOutOfBoundsException - Generics in privileged aspects");
- }
-
- public void testGenerics_pr95993() {
- runTest("NPE at ClassScope.java:660 when compiling generic class");
- }
-
- public void testItdGenerics_pr99228() {
- runTest("ITD of a field into a generic class");
- }
-
- public void testItdGenerics_pr98320() {
- runTest("intertype with nested generic type");
- }
-
- public void testItdGenerics_pr100227() {
- runTest("inner class with generic enclosing class");
- }
-
- public void testItdGenerics_pr100260() {
- runTest("methods inherited from a generic parent");
- }
-
- public void testSyntaxErrorNPE_pr103266() {
- runTest("NPE on syntax error");
- }
-
- public void testFinalAbstractClass_pr109486() {
- runTest("Internal compiler error (ClassParser.java:242)");
- }
-
- public void testComplexBinding_pr102210() {
- runTest("NullPointerException trying to compile");
- }
-
- public void testIllegalStateExceptionOnNestedParameterizedType_pr106634() {
- runTest("IllegalStateException unpacking signature of nested parameterized type");
- }
-
- public void testParseErrorOnAnnotationStarPlusPattern() {
- runTest("(@Foo *)+ type pattern parse error");
- }
-
- public void test_pr106130_tooManyLocals() {
- runTest("test weaving with > 256 locals");
- }
-
- public void testMissingNamePattern_pr106461() {
- runTest("missing name pattern");
- }
-
- public void testMissingNamePattern_pr107059() {
- runTest("parser crashes on call(void (@a *)(..)");
- }
-
- public void testIntermediateAnnotationMatching() {
- runTest("intermediate annotation matching");
- }
-
- public void testBadRuntimeTestGeneration() {
- runTest("target(@Foo *)");
- }
-
- // ONE_EIGHT remove for now, needs some grammar changes to ensure empty type annotations are put in place for later consumption
- // public void testErrorMessageOnITDWithTypePatterns() {
- // runTest("clear error message on itd with type pattern");
- // }
-
- public void testAjKeywordsAsIdentifiers() {
- runTest("before and after are valid identifiers in classes");
- }
-
- public void testAjKeywordsAsIdentifiers2() {
- runTest("before and after are valid identifiers in classes, part 2");
- }
-
- public void testNoBeforeReturningAdvice() {
- runTest("before returning advice not allowed!");
- }
-
- public void testDetectVoidFieldType() {
- runTest("void field type in pointcut expression");
- }
-
- public void testPointcutOverriding() {
- runTest("overriding final pointcut from super-aspect");
- }
-
- public void testAtSuppressWarnings() {
- runTest("@SuppressWarnings should suppress");
- }
-
- public void testDEOWWithBindingPointcut() {
- runTest("declare warning : foo(str) : ...;");
- }
-
- public void testAroundAdviceAndInterfaceInitializer() {
- runTest("around advice on interface initializer");
- }
-
- public void testGoodErrorMessageOnUnmatchedMemberSyntax() {
- runTest("good error message for unmatched member syntax");
- }
-
- public void testITDWithNoExceptionAndIntermediary() {
- runTest("itd override with no exception clause");
- }
-
- public void testAnonymousInnerClasses() {
- runTest("anonymous inner classes");
- }
-
- public void testMultipleAnonymousInnerClasses() {
- runTest("multiple anonymous inner classes");
- }
-
- public void testPrivilegedMethodAccessorsGetRightExceptions_pr82989() {
- runTest("Compiler error due to a wrong exception check in try blocks");
- }
-
- public void testAnonymousInnerClassWithMethodReturningTypeParameter_pr107898() {
- runTest("anonymous inner class with method returning type parameter");
- }
-
- public void testMatchingOfObjectArray() {
- runTest("matching against Object[]");
- }
-
- public void testMultipleAnonymousInnerClasses_pr108104() {
- runTest("multiple anonymous inner classes 2");
- }
-
- public void testSignatureMatchingInMultipleOverrideScenario() {
- runTest("signature matching in override scenario");
- }
-
- public void testWildcardAnnotationMatching_pr108245() {
- runTest("wildcard annotation matching - pr108245");
- }
-
- public void testInnerTypesAndTypeVariables() {
- runTest("inner types and type variables");
- }
-
- public void testAtAfterThrowingWithNoFormal() {
- runTest("@AfterThrowing with no formal specified");
- }
-
- public void testParameterizedVarArgsMatch() {
- runTest("varargs with type variable");
- }
-
- public void testFieldAccessInsideITDM() {
- runTest("itd field access inside itd method");
- }
-
- public void testTypeVarWithTypeVarBound() {
- runTest("type variable with type variable bound");
- }
-
- public void testEnumSwitchInITD() {
- runTest("switch on enum inside ITD method");
- }
-
- public void testInnerTypeOfGeneric() {
- runTest("inner type of generic interface reference from parameterized type");
- }
-
- public void testDeclareParentsIntroducingCovariantReturnType() {
- runTest("declare parents introducing override with covariance");
- }
-
- public void testInnerClassPassedToVarargs() {
- runTest("inner class passed as argument to varargs method");
- }
-
- public void testInlinedFieldAccessInProceedCall() {
- runTest("inlined field access in proceed call");
- }
-
- public void testVisibiltyInSignatureMatchingWithOverridesPart1() {
- runTest("visibility in signature matching with overrides - 1");
- }
-
- public void testVisibiltyInSignatureMatchingWithOverridesPart2() {
- runTest("visibility in signature matching with overrides - 2");
- }
-
- public void testVisibiltyInSignatureMatchingWithOverridesPart3() {
- runTest("visibility in signature matching with overrides - 3");
- }
-
- public void testArgsGeneratedCorrectlyForAdviceExecution() {
- runTest("args generated correctly for advice execution join point");
- }
-
- public void testNoUnusedWarningsOnAspectTypes() {
- runTest("no unused warnings on aspect types");
- }
-
- public void testSyntheticArgumentsOnITDConstructorsNotUsedInMatching() {
- runTest("synthetic arguments on itd cons are not used in matching");
- }
-
- public void testParsingOfGenericTypeSignature() {
- runTest("parse generic type signature with parameterized type in interface");
- }
-
- public void testOverrideAndCovarianceWithDecPRuntime() {
- runTest("override and covariance with decp - runtime");
- }
-
- public void testOverrideAndCovarianceWithDecPRuntimeMultiFiles() {
- runTest("override and covariance with decp - runtime separate files");
- }
-
- public void testOverrideAndCovarianceWithDecPRuntimeMultiFilesBinaryWeaving() {
- runTest("override and covariance with decp - binary weaving");
- }
-
- public void testAbstractSynchronizedITDMethods() {
- runTest("abstract synchronized itdms not detected");
- }
-
- public void testSynchronizedITDInterfaceMethods() {
- runTest("synchronized itd interface methods");
- }
-
- public void testNoWarningOnUnusedPointcut() {
- runTest("unused private pointcuts");
- }
-
- public void testITDOnInterfaceWithExistingMember() {
- runTest("itd interface method already existing on interface");
- }
-
- public void testFinalITDMOnInterface() {
- runTest("final itd methods on interfaces");
- }
-
- public void testPrivatePointcutOverriding() {
- runTest("can't override private pointcut in abstract aspect");
- }
-
- public void testAdviceOnCflow() {
- runTest("advising cflow advice execution");
- }
-
- public void testNoTypeMismatchOnSameGenericTypes() {
- runTest("no type mismatch on generic types in itds");
- }
-
- public void testSuperCallInITD() {
- runTest("super call in ITD");
- }
-
- public void testSuperCallInITDPart2() {
- runTest("super call in ITD - part 2");
- }
-
- public void testAtAnnotationBadTest_pr103740() {
- runTest("Compiler failure on at_annotation");
- }
-
- public void testNoUnusedParameterWarningsForSyntheticAdviceArgs() {
- runTest("no unused parameter warnings for synthetic advice args");
- }
-
- public void testNoVerifyErrorWithSetOnInnerType() {
- runTest("no verify error with set on inner type");
- }
-
- public void testCantFindTypeErrorWithGenericReturnTypeOrParameter() {
- runTest("cant find type error with generic return type or parameter");
- }
-
- public void testNoVerifyErrorOnGenericCollectionMemberAccess() {
- runTest("no verify error on generic collection member access");
- }
-
- public void testRawAndGenericTypeConversionITDCons() {
- runTest("raw and generic type conversion with itd cons");
- }
-
- public void testAtAnnotationBindingWithAround() {
- runTest("@annotation binding with around advice");
- }
-
- public void testUnableToBuildShadows_pr109728() {
- runTest("Unable to build shadows");
- }
-
- public void testMessageOnMissingTypeInDecP() {
- runTest("declare parents on a missing type");
- }
-
- public void testParameterizedGenericMethods() {
- runTest("parameterized generic methods");
- }
-
- public void testIllegalChangeToPointcutDeclaration_pr111915() {
- runTest("test illegal change to pointcut declaration");
- }
-
- public void testCantProvideDefaultImplViaITD_pr110307_1() {
- runTest("Cant provide default implementation via ITD - 1");
- }
-
- public void testCantProvideDefaultImplViaITD_pr110307_2() {
- runTest("Cant provide default implementation via ITD - 2");
- }
-
- public void testCantProvideDefaultImplViaITD_pr110307_3() {
- runTest("Cant provide default implementation via ITD - 3");
- }
-
- public void testCantProvideDefaultImplViaITD_pr110307_4() {
- runTest("Cant provide default implementation via ITD - 4");
- }
-
- public void testCantProvideDefaultImplViaITD_pr110307_5() {
- runTest("Cant provide default implementation via ITD - 5");
- }
-
- // Needs a change in the compiler so that getType() can be overridden in the intertype scope - thats
- // where we can police whether a type variable has been used without being specified appropriately.
- // public void testCantProvideDefaultImplViaITD_pr110307_6() {runTest("Cant provide default implementation via ITD - 6");}
-
- public void testCantProvideDefaultImplViaITD_pr110307_7() {
- runTest("Cant provide default implementation via ITD - 7");
- }
-
- public void testCallJoinPointsInAnonymousInnerClasses() {
- runTest("call join points in anonymous inner classes");
- }
-
- public void testNoRequirementForUnwovenTypesToBeExposedToWeaver() {
- runTest("default impl of Runnable");
- }
-
- public void testArrayCloneCallJoinPoints() {
- runTest("array clone call join points in 1.4 vs 1.3");
- }
-
- public void testDebugInfoForAroundAdvice() {
- runTest("debug info in around advice inlining");
- }
-
- public void testCCEWithGenericWildcard_pr112602() {
- runTest("ClassCastException with generic wildcard");
- }
-
- public void testVarArgsIITDInConstructor() {
- runTest("ITD varargs in constructor");
- }
-
- public void testWeaveInfoMessageForDeclareAtMethodOnITDdMethod() {
- runTest("weaveinfo message for declare at method on an ITDd method");
- }
-
- public void testITDCWithNoExplicitConsCall() {
- runTest("ITDC with no explicit cons call");
- }
-
- public void testJava5SpecificFeaturesUsedAtJava14OrLower() {
- runTest("java 5 pointcuts and declares at pre-java 5 compliance levels - 1.7");
- }
-
- public void testAnonymousTypes() {
- runTest("Anonymous types and nome matching");
- }
-
- public void testAdviceExecutionJPToStringForms() {
- runTest("adviceexecution join point toString forms");
- }
-
- public void testAssertWithinPointcutExpression() {
- runTest("pointcut expression containing 'assert'");
- }
-
- public void testNoVerifyErrorWithTwoThisPCDs_pr113447() {
- runTest("no verify error with two this pcds");
- }
-
- public void testNoVerifyErrorWithTwoAtThisPCDs_pr113447() {
- runTest("no verify error with two at this pcds");
- }
-
- public void testNoVerifyErrorWithAtWithinPCDs_pr113447() {
- runTest("no verify error with at within pcds");
- }
-
- public void testNoVerifyErrorWithAtWithincodePCDs_pr113447() {
- runTest("no verify error with at withincode pcds");
- }
-
- public void testNoVerifyErrorWithAtAnnotationPCDs_pr113447() {
- runTest("no verify error with at annotation pcds");
- }
-
- public void testNoVerifyErrorWithTwoArgsPCDs_pr113447() {
- runTest("no verify error with two args pcds");
- }
-
- public void testNoStackOverflowWithCircularPCDInGenericAspect() {
- runTest("no StackOverflowError with circular pcd in generic aspect");
- }
-
- public void testNoStackOverflowWithCircularPCDInGenericAspect2() {
- runTest("no StackOverflowError with circular pcd in generic aspect - 2");
- }
-
- public void testNPEInThisJoinPointStaticPart() {
- runTest("thisJoinPointStaticPart in if test");
- }
-
- public void testPointcutParsingOfCompiledPointcuts() {
- runTest("pointcut parsing with ajc compiled pointcut references");
- }
-
- public void testReflectionOfAbstractITDs() {
- runTest("reflection on abstract ITDs (Billing example)");
- }
-
- public void testDeclareSoftWithAdviceExecution() {
- runTest("declare soft and adviceexecution");
- }
-
- public void testDeclareSoftWithExclusions() {
- runTest("declare soft and exclusions");
- }
-
- public void testReturningObjectBinding() {
- runTest("returning(Object) binding");
- }
-
- public void testPerTargetAndNegation() {
- runTest("pertarget and negated pointcut");
- }
-
- public void testParameterizedPointcutAndAdvice() {
- runTest("parameterized pointcut and advice");
- }
-
- public void testDoublyParameterizedAbstractType() {
- runTest("double parameter generic abstract type");
- }
-
- public void testArgNamesInAdviceAnnotations() {
- runTest("arg names in advice annotations");
- }
-
- /*
- * Load-time weaving bugs
- */
- public void testNPEinWeavingAdaptor_pr116626() {
- runTest("NPE in WeavingAdaptor");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_Exact() {
- runTest("xlint message for improper exact annotation type");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_OR() {
- runTest("xlint message for improper annotation type inside OR");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_AND() {
- runTest("xlint message for improper annotation type inside AND");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_Return() {
- runTest("xlint message for improper annotated return type");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_Declaring() {
- runTest("xlint message for improper annotated declaring type");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_Parameter() {
- runTest("xlint message for improper annotated parameter type");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_Throws() {
- runTest("xlint message for improper annotated throws pattern");
- }
-
- public void testXlintMessageForImproperAnnotationType_pr115252_MoreThanOne() {
- runTest("xlint message for more than one improper annotated parameter type");
- }
-
- public void testNoNPEWhenInaccessibleMethodIsCalledWithinITD_pr119019() {
- runTest("no NPE when inaccessible method is called within itd");
- }
-
- public void testNoNPEWithOrPointcutAndMoreThanOneArgs_pr118149() {
- runTest("no NPE with or pointcut and more than one args");
- }
-
- public void testNoSOBWithGenericInnerAspects_pr119543() {
- runTest("no StringOutOfBoundsException with generic inner aspects");
- }
-
- public void testIllegalAccessErrorWithAroundAdvice_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call");
- }
-
- public void testIllegalAccessErrorWithAroundAdviceNotSelf_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call not self");
- }
-
- public void testIllegalAccessErrorWithAroundAdviceTerminateAfterCompilationLTW_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call using -XterminateAfterCompilation and LTW");
- }
-
- public void testIllegalAccessErrorWithAroundAdviceLTW_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call using LTW");
- }
-
- public void testIllegalAccessErrorWithAroundAdviceNotSelfLTW_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call not self using LTW");
- }
-
- public void testIllegalAccessErrorWithAroundAdviceSelfAndNotSelfLTW_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call self and not self using LTW");
- }
-
- public void testIllegalAccessErrorWithAroundAdviceLTWNoInline_pr119657() {
- runTest("IllegalAccessError with around advice on interface method call using LTW and -XnoInline");
- }
-
- public void testReflectOnCodeStyleITDs() {
- runTest("reflection on itds");
- }
-
- public void testReflectOnAtAspectJDecP() {
- runTest("reflection on @DeclareParents");
- }
-
- public void testModifierOverrides() {
- runTest("modifier overrides");
- }
-
- public void testAbstractPerThisInAtAspectJ() {
- runTest("abstract perthis in @AspectJ");
- }
-
- public void testNPEInBcelAdviceWithConcreteAspect_pr121385() {
- runTest("override protected pointcut in aop.xml concrete aspect");
- }
-
- }
|