Browse Source

Simplify execution of PureJavaTests and KnownLimitationsTests

Getting rid of XML includes and two superfluous files, merging them with
their respective including counterparts. As far as I can see, the two
test suites are not part of the automatic build process, but can be
started manually as easily as any other test (suite) now.

Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
tags/java16-add-opens
Alexander Kriegisch 3 years ago
parent
commit
ee2bec7cbc

+ 3
- 3
tests/src/test/java/org/aspectj/systemtest/knownlimitations/KnownLimitationsTests.java View File

@@ -4,8 +4,8 @@
* 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
*
* http://www.eclipse.org/legal/epl-v10.html
*
* ******************************************************************/
package org.aspectj.systemtest.knownlimitations;

@@ -20,7 +20,7 @@ public class KnownLimitationsTests extends org.aspectj.testing.XMLBasedAjcTestCa
}

protected java.net.URL getSpecFile() {
return getClassResource("knownlimitations.xml");
return getClassResource("knownLimitations.xml");
// return new File("../tests/src/org/aspectj/systemtest/knownlimitations/knownlimitations.xml");
}


+ 36
- 34
tests/src/test/resources/org/aspectj/systemtest/incremental/incremental-tests.xml View File

@@ -1,9 +1,10 @@
<suite>
<!-- Incremental compilation Tests -->

<ajc-test dir="incremental/initialTests/classAdded"
title="expect class added in initial incremental tests"
<ajc-test dir="incremental/initialTests/classAdded"
title="expect class added in initial incremental tests"
keywords="incremental-test" >
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<run class="main.Main"/>
@@ -13,11 +14,11 @@
<run class="main.Main" skipTester="true"/>
</ajc-test>

<ajc-test dir="incremental/initialTests/classRemoved"
title="expect class removed in initial incremental tests"
<ajc-test dir="incremental/initialTests/classRemoved"
title="expect class removed in initial incremental tests"
keywords="incremental-test" >
<compile staging="true"
options="-incremental"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<run class="main.Main"/>
<inc-compile tag="20">
@@ -26,10 +27,10 @@
<run class="main.Main"/>
</ajc-test>

<ajc-test dir="incremental/initialTests/classUpdated"
title="expect class updated in initial incremental tests"
<ajc-test dir="incremental/initialTests/classUpdated"
title="expect class updated in initial incremental tests"
keywords="incremental-test" >
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<run class="main.Main"/>
@@ -39,11 +40,11 @@
<run class="main.Main"/>
</ajc-test>

<ajc-test dir="incremental/initialTests/sourceAdded"
<ajc-test dir="incremental/initialTests/sourceAdded"
title="add file with class"
comment="only expecting pickup if sourceroots"
comment="only expecting pickup if sourceroots"
keywords="incremental-test" >
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<run class="main.Main"/>
@@ -56,11 +57,11 @@
<run class="main.Main"/>
</ajc-test>

<ajc-test dir="incremental/initialTests/sourceDeleted"
<ajc-test dir="incremental/initialTests/sourceDeleted"
title="delete source file before incremental compile"
comment="build config should permit file deletions for incremental (sourceroots)"
keywords="incremental-test" >
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<run class="delete.Main"/>
@@ -68,12 +69,12 @@
<dir-changes removed="delete.DeleteMe"/>
<message kind="error" line="6" file="delete/Target.java"/>
</inc-compile>
<inc-compile tag="30"/>
<inc-compile tag="30"/>
<run class="delete.Main"/>
</ajc-test>

<!-- this test cannot pass with the new AjAttribute.MethodDeclarationLineNumberAttribute
<ajc-test dir="incremental/initialTests/expClasses"
<ajc-test dir="incremental/initialTests/expClasses"
title="expected class tree" >
<compile files="Main.java">
<dir-changes expDir="expected"/>
@@ -81,11 +82,11 @@
<run class="Main"/>
</ajc-test>
-->
<ajc-test dir="incremental/initialTests/defaultPackage"
title="do everything in default package (sourceroots)"
<ajc-test dir="incremental/initialTests/defaultPackage"
title="do everything in default package (sourceroots)"
keywords="incremental-test" >
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<run class="Main"/>
@@ -97,7 +98,7 @@
<dir-changes updated="Main"/>
</inc-compile>
<run class="Main" skipTester="true"/>
<inc-compile tag="40">
<inc-compile tag="40">
<message kind="error" line="6" file="Main.java"/>
</inc-compile>
<inc-compile tag="50"/>
@@ -107,9 +108,9 @@
<ajc-test dir="incremental/defaultPackage"
keywords="incremental-test"
title="change sources in default package">
<compile
<compile
staging="true"
options="-incremental"
options="-incremental"
sourceroots="src"/>
<run class="Main"/>
<inc-compile tag="20"/>
@@ -119,9 +120,9 @@
<ajc-test dir="incremental/interPackage"
keywords="incremental-test"
title="change source">
<compile
<compile
staging="true"
options="-incremental"
options="-incremental"
sourceroots="src"/>
<run class="app.Main"/>
<inc-compile tag="20"/>
@@ -132,7 +133,7 @@
<ajc-test dir="incremental/stringliteral"
keywords="incremental-test"
title="incrementally change only string literal, still expect advice">
<compile staging="true" options="-incremental"
<compile staging="true" options="-incremental"
sourceroots="src"/>
<run class="packageOne.Main"
options="in packageOne.Main.main(..),
@@ -145,10 +146,10 @@
before main packageOne.Main"/>
</ajc-test>

<ajc-test dir="incremental/initialTests/aspectSourceAdded"
<ajc-test dir="incremental/initialTests/aspectSourceAdded"
title="add aspect source file and check world is rewoven"
keywords="incremental-test" >
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<inc-compile tag="20">
@@ -156,11 +157,11 @@
</inc-compile>
<run class="Main"/>
</ajc-test>
<ajc-test dir="incremental/initialTests/classWAroundClosureRemoved"
title="make sure additional classes generated during weave are deleted with src class file"
keywords="incremental-test">
<compile staging="true"
<compile staging="true"
options="-incremental"
sourceroots="."/>
<inc-compile tag="20" >
@@ -171,8 +172,8 @@
<ajc-test dir="incremental/full-rebuild"
pr="59895"
title="incremental with aspect-driven full rebuild">
<compile
staging="true"
<compile
staging="true"
sourceroots="src"
options="-incremental">
<message kind="error" line="3" file="Aspect.java"/>
@@ -182,4 +183,5 @@
</inc-compile>
<run class="Main"/>
</ajc-test>

</suite>

+ 0
- 297
tests/src/test/resources/org/aspectj/systemtest/knownlimitations/knownLimitations-tests.xml View File

@@ -1,297 +0,0 @@
<!-- Known Limitations -->

<!-- we're not implementing static inter-type fields on interfaces in 1.1 -->
<ajc-test dir="knownLimitations/test117" title="DEPRECATED: introduce of variables"
keywords="from-base,knownLimitation">
<compile files="Driver.java"/>
<run class="Driver"/>
</ajc-test>

<!-- we're not implementing this error check in 1.1 -->
<ajc-test dir="errors"
title="checking the contra-variant errors for typing of proceed"
keywords="from-errors,knownLimitation">
<compile files="BadAround.java">
<message kind="error" line="12"/>
<message kind="error" line="15"/>
<message kind="error" line="18"/>
<message kind="error" line="19"/>
<message kind="error" line="22"/>
</compile>
</ajc-test>

<!-- we're not implementing static inter-type fields on interfaces in 1.1 -->
<ajc-test dir="design/intro"
title="introduction of static methods and fields on classes and interfaces"
keywords="from-design,knownLimitation">
<compile files="Statics.java"/>
<run class="Statics"/>
</ajc-test>

<!-- only before advice implemented for handler join points in 1.1 -->
<ajc-test dir="new" title="advice on catch clauses"
keywords="from-resolved_10x,knownLimitation">
<compile files="CatchAdvice.java"/>
<run class="CatchAdvice"/>
</ajc-test>

<!-- we will handle this by signalling a weave-time error for any around
advice that is applied to a join point which throws checked exceptions
that it can't handle. proceeds in closures change the exceptions that
around advice can handle to include the greatest lower bound of the
checked exceptions that are legally throwable by the proceed.
Ideally their should be an -Xlint compile-time warning for ALL
cases that could produce weave-time errors.
-->
<ajc-test dir="new" title="holding onto proceed calls in a closure-like way"
keywords="from-resolved_10x,knownLimitation">
<compile files="HoldProceed.java"/>
<run class="HoldProceed"/>
</ajc-test>

<!-- around advice not implemented on initializer join points -->
<ajc-test dir="new" pr="490"
title="PR#458 Compiler was incorrectly flagging error in advice on initialization and static initialization"
keywords="from-resolved_10x,knownLimitation">
<compile files="StaticInitCE.java"/>
<run class="StaticInitCE"/>
</ajc-test>

<!-- This behavior is different from 1.0, but we might want to consider allowing it
Using the eclipse compiler it would be much easier to permit than forbid. -->
<ajc-test dir="new/introTypeMissing"
title="Introduced type unavailable to instanceof expressions in introduced methods"
keywords="from-resolved_10x,knownLimitation">
<compile files="InstanceOf.java,TargetClass.java,Util.java">
<message kind="error" line="19"/>
<message kind="error" line="20"/>
<message kind="error" line="21"/>
<message kind="error" line="22"/>
<message kind="error" line="23"/>
<message kind="error" line="24"/>
<message kind="error" line="25"/>
<message kind="error" line="26"/>
</compile>
</ajc-test>

<ajc-test dir="new"
title="enclosing join point not exported properly in pre-initialization join point"
keywords="from-resolved_10x,knownLimitation">
<compile files="PreInitialization.java"/>
<run class="PreInitialization"/>
</ajc-test>

<!-- pointcuts aren't checked for circularities unless they're used -->
<ajc-test dir="new" pr="568" title="cyclic pointcut definitions"
keywords="from-resolved_10rc3,knownLimitation">
<compile files="CyclicPointcuts.java">
<message kind="error" line="11"/>
<message kind="error" line="14"/>
<message kind="error" line="18"/>
<message kind="error" line="32"/>
<message kind="error" line="43"/>
</compile>
</ajc-test>

<ajc-test dir="new"
title="package typepattern with no packages (in default package)"
keywords="from-resolved_105,knownLimitation">
<compile options="-Xlint" files="TypeNames.java">
<message kind="warning" line="34"/>
<message kind="warning" line="39"/>
<message kind="warning" line="43"/>
<message kind="warning" line="47"/>
</compile>
<run class="TypeNames"/>
</ajc-test>

<ajc-test dir="new" pr="764"
title="flag errors when binding args with indeterminate prefix and suffix"
keywords="from-resolved_105,knownLimitation">
<compile files="IndeterminateArgsCE.java">
<message kind="error" line="67"/>
<message kind="error" line="68"/>
<message kind="error" line="70"/>
<message kind="error" line="72"/>
</compile>
</ajc-test>

<ajc-test dir="design/around"
title="around and return types + inlining optimizations"
comment="-XOcodeSize not in 1.1, source uses 1.4 APIs"
keywords="from-14tests,knownLimitation">
<compile options="-XOcodeSize,-source,1.4"
files="ReturnCastProceed.java,StackChecker.java">
<message kind="warning" line="68"/>
</compile>
<run class="ReturnCastProceed" vm="1.4"/>
</ajc-test>

<ajc-test dir="new" pr="885" keywords="knownLimitation"
comment="this behaves differently in 1.3 from 1.4 for unknown reasons, merge with above when resolved"
title="source locations within expressions (hard case of constructor start)">
<compile files="SourceLocationWithinExprHard.java"/>
<run class="SourceLocationWithinExprHard"/>
</ajc-test>

<!-- Can't handle packages named 'aspect' in parser
-->
<ajc-test dir="new/PR852" pr="852"
title="declaring method on superclass and subclass"
keywords="knownLimitation">
<compile files="aspect/Aspect.java,target/SubClass.java,target/SuperClass.java">
<dir-changes added="target.SubClass,target.SuperClass"/>
</compile>
<run class="aspect.Aspect"/>
</ajc-test>

<ajc-test dir="new" pr="660" title="illegal name binding in around cflow"
keywords="from-resolved_104,knownLimitation">
<compile files="ArgsInCflowCf.java">
<message kind="error" line="19"/>
<message kind="error" line="29"/>
<message kind="error" line="35"/>
</compile>
</ajc-test>

<ajc-test dir="incremental/stringliteral"
keywords="knownLimitation"
title="incrementally change string size and wire in injar classes">
<compile staging="true" options="-incremental"
files="oneInjar.jar,twoInjar.jar"
sourceroots="src"/>
<run class="packageOne.Main"
options="in packageOne.Main.main(..),
before main packageOne.Main"/>
<inc-compile tag="20">
<dir-changes updated="packageOne.Main"/>
</inc-compile>
<!-- now failing here. This step passes in non-injar variant. -->
<run class="packageOne.Main"
options="in longer packageOne.Main.main(..),
before main packageOne.Main"/>
<inc-compile tag="30">
<dir-changes added="RunInjarMains"/>
</inc-compile>
<run class="packageOne.Main"
options="in longer packageOne.Main.main(..),
before main InjarOneMain,
before main InjarTwoMain,
before main packageOne.Main"/>
</ajc-test>

<ajc-test dir="bugs" pr="34206"
keywords="knownLimitation"
title="before():execution(new(..)) does not throw NoAspectBoundException"
comment="correct behavior of this case needs to be thought through">
<compile files="AspectInitError.java"/>
<run class="AspectInitError"/>
</ajc-test>
<ajc-test dir="new/binaryWarnings/src" pr="37020"
keywords="knownLimitation"
comment="source loc of binary jp depends on first code, not block start"
title="declare error on handler/method execution with no code on binary ajc 1.1 classes">
<compile files="aspects/MainExecStartLinesErrors.java,../injars/appStartLines-ajc-1.1.jar">
<message kind="error" file="app/MainExecStartLines.java"
line="6" text="execution(void MainExecStartLines.main(String[]))"/>
<message kind="error" file="app/MainExecStartLines.java"
line="17" text="handler(RuntimeException)"/>
</compile>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020"
keywords="knownLimitation"
comment="source loc of binary jp depends on first code, not block start; XXX need javac inlining example"
title="declare error on handler/method execution with no code on binary javac 1.4 classes">
<compile files="aspects/MainExecStartLinesErrors.java,../injars/appStartLines-javac-1.4.jar">
<message kind="error" file="app/MainExecStartLines.java"
line="6" text="execution(void MainExecStartLines.main(String[]))"/>
<message kind="error" file="app/MainExecStartLines.java"
line="17" text="handler(RuntimeException)"/>
</compile>
</ajc-test>

<ajc-test dir="harness"
keywords="command-line-error,knownLimitation"
comment="can't test -help: has to abort, but returns 0, normal status"
title="CLE: -help usage">
<compile badInput="true" options="-help">
<message kind="abort" text="Usage"/>
</compile>
</ajc-test>

<!-- The next three tests are all about the same issue. The source
line for a constructor execution is returned as the first executable
line within the constructor-execution join point rather than the declaration
line of the constructor. Any other definition will require collusion between
the source->bytecode compiler and the weaver and will only work in
those case where such collusion is possible.
-->

<ajc-test dir="new/binaryWarnings/src" pr="37020" keywords="knownLimitation"
title="declare warnings on main - constructor execution">
<compile files="aspects/ConstructorExecutionWarning.java,app/Main.java">
<message kind="warning" file="app/Main.java"
line="23" text="execution(Main.new())"/>
</compile>
<run class="app.Main"/>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020" keywords="knownLimitation"
title="declare warnings on binary javac 1.4 main - constructor execution">
<compile files="aspects/ConstructorExecutionWarning.java,../injars/app-javac-1.4.jar">
<message kind="warning" file="app/Main.java"
line="23" text="execution(Main.new())"/>
</compile>
<run class="app.Main"/>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020" keywords="knownLimitation"
title="declare warnings on binary ajc 1.1 main - constructor execution">
<compile files="aspects/ConstructorExecutionWarning.java,../injars/app-ajc-1.1.jar">
<message kind="warning" file="app/Main.java"
line="23" text="execution(Main.new())"/>
</compile>
<run class="app.Main"/>
</ajc-test>

<ajc-test dir="bugs/handlers" pr="37898" keywords="knownLimitation"
title="advice on handler join points should not throw unpermitted checked exceptions">
<compile files="ExceptionCheckCE.java">
<message kind="warning" line="8" text="expected"/>
<message kind="error" line="25" text="throw checked exception" />
<message kind="error" line="8" text="throw checked exception" />
</compile>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="-nowarn suppresses XLint warnings">
<compile files="XLintWarningTest.java" options="-nowarn"/>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="warn:none suppresses XLint warnings">
<compile files="XLintWarningTest.java" options="-warn:none"/>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="-nowarn suppresses declare warnings">
<compile files="WarningTest.java" options="-nowarn"/>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="-warn:none suppresses declare warnings">
<compile files="WarningTest.java" options="-warn:none"/>
</ajc-test>

<ajc-test dir="bugs" pr="38168" keywords="knownLimitation"
title="insertion of lots of advice code can make branch offset for if too large">
<compile files="WideJumps.java"/>
<run class="WideJumps"/>
</ajc-test>

+ 296
- 7
tests/src/test/resources/org/aspectj/systemtest/knownlimitations/knownLimitations.xml View File

@@ -1,11 +1,300 @@
<!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"[
<!ENTITY tests SYSTEM "../tests/src/org/aspectj/systemtest/knownlimitations/knownLimitations-tests.xml">
]>
<suite>

<!-- Known Limitations -these tests will fail -->
<!-- Known Limitations -->

<suite>
<!-- we're not implementing static inter-type fields on interfaces in 1.1 -->
<ajc-test dir="knownLimitations/test117" title="DEPRECATED: introduce of variables"
keywords="from-base,knownLimitation">
<compile files="Driver.java"/>
<run class="Driver"/>
</ajc-test>

<!-- we're not implementing this error check in 1.1 -->
<ajc-test dir="errors"
title="checking the contra-variant errors for typing of proceed"
keywords="from-errors,knownLimitation">
<compile files="BadAround.java">
<message kind="error" line="12"/>
<message kind="error" line="15"/>
<message kind="error" line="18"/>
<message kind="error" line="19"/>
<message kind="error" line="22"/>
</compile>
</ajc-test>

<!-- we're not implementing static inter-type fields on interfaces in 1.1 -->
<ajc-test dir="design/intro"
title="introduction of static methods and fields on classes and interfaces"
keywords="from-design,knownLimitation">
<compile files="Statics.java"/>
<run class="Statics"/>
</ajc-test>

<!-- only before advice implemented for handler join points in 1.1 -->
<ajc-test dir="new" title="advice on catch clauses"
keywords="from-resolved_10x,knownLimitation">
<compile files="CatchAdvice.java"/>
<run class="CatchAdvice"/>
</ajc-test>

<!-- we will handle this by signalling a weave-time error for any around
advice that is applied to a join point which throws checked exceptions
that it can't handle. proceeds in closures change the exceptions that
around advice can handle to include the greatest lower bound of the
checked exceptions that are legally throwable by the proceed.
Ideally their should be an -Xlint compile-time warning for ALL
cases that could produce weave-time errors.
-->
<ajc-test dir="new" title="holding onto proceed calls in a closure-like way"
keywords="from-resolved_10x,knownLimitation">
<compile files="HoldProceed.java"/>
<run class="HoldProceed"/>
</ajc-test>

<!-- around advice not implemented on initializer join points -->
<ajc-test dir="new" pr="490"
title="PR#458 Compiler was incorrectly flagging error in advice on initialization and static initialization"
keywords="from-resolved_10x,knownLimitation">
<compile files="StaticInitCE.java"/>
<run class="StaticInitCE"/>
</ajc-test>

<!-- This behavior is different from 1.0, but we might want to consider allowing it
Using the eclipse compiler it would be much easier to permit than forbid. -->
<ajc-test dir="new/introTypeMissing"
title="Introduced type unavailable to instanceof expressions in introduced methods"
keywords="from-resolved_10x,knownLimitation">
<compile files="InstanceOf.java,TargetClass.java,Util.java">
<message kind="error" line="19"/>
<message kind="error" line="20"/>
<message kind="error" line="21"/>
<message kind="error" line="22"/>
<message kind="error" line="23"/>
<message kind="error" line="24"/>
<message kind="error" line="25"/>
<message kind="error" line="26"/>
</compile>
</ajc-test>

<ajc-test dir="new"
title="enclosing join point not exported properly in pre-initialization join point"
keywords="from-resolved_10x,knownLimitation">
<compile files="PreInitialization.java"/>
<run class="PreInitialization"/>
</ajc-test>

<!-- pointcuts aren't checked for circularities unless they're used -->
<ajc-test dir="new" pr="568" title="cyclic pointcut definitions"
keywords="from-resolved_10rc3,knownLimitation">
<compile files="CyclicPointcuts.java">
<message kind="error" line="11"/>
<message kind="error" line="14"/>
<message kind="error" line="18"/>
<message kind="error" line="32"/>
<message kind="error" line="43"/>
</compile>
</ajc-test>

<ajc-test dir="new"
title="package typepattern with no packages (in default package)"
keywords="from-resolved_105,knownLimitation">
<compile options="-Xlint" files="TypeNames.java">
<message kind="warning" line="34"/>
<message kind="warning" line="39"/>
<message kind="warning" line="43"/>
<message kind="warning" line="47"/>
</compile>
<run class="TypeNames"/>
</ajc-test>

<ajc-test dir="new" pr="764"
title="flag errors when binding args with indeterminate prefix and suffix"
keywords="from-resolved_105,knownLimitation">
<compile files="IndeterminateArgsCE.java">
<message kind="error" line="67"/>
<message kind="error" line="68"/>
<message kind="error" line="70"/>
<message kind="error" line="72"/>
</compile>
</ajc-test>

<ajc-test dir="design/around"
title="around and return types + inlining optimizations"
comment="-XOcodeSize not in 1.1, source uses 1.4 APIs"
keywords="from-14tests,knownLimitation">
<compile options="-XOcodeSize,-source,1.4"
files="ReturnCastProceed.java,StackChecker.java">
<message kind="warning" line="68"/>
</compile>
<run class="ReturnCastProceed" vm="1.4"/>
</ajc-test>

<ajc-test dir="new" pr="885" keywords="knownLimitation"
comment="this behaves differently in 1.3 from 1.4 for unknown reasons, merge with above when resolved"
title="source locations within expressions (hard case of constructor start)">
<compile files="SourceLocationWithinExprHard.java"/>
<run class="SourceLocationWithinExprHard"/>
</ajc-test>

<!-- Can't handle packages named 'aspect' in parser
-->
<ajc-test dir="new/PR852" pr="852"
title="declaring method on superclass and subclass"
keywords="knownLimitation">
<compile files="aspect/Aspect.java,target/SubClass.java,target/SuperClass.java">
<dir-changes added="target.SubClass,target.SuperClass"/>
</compile>
<run class="aspect.Aspect"/>
</ajc-test>

<ajc-test dir="new" pr="660" title="illegal name binding in around cflow"
keywords="from-resolved_104,knownLimitation">
<compile files="ArgsInCflowCf.java">
<message kind="error" line="19"/>
<message kind="error" line="29"/>
<message kind="error" line="35"/>
</compile>
</ajc-test>

<ajc-test dir="incremental/stringliteral"
keywords="knownLimitation"
title="incrementally change string size and wire in injar classes">
<compile staging="true" options="-incremental"
files="oneInjar.jar,twoInjar.jar"
sourceroots="src"/>
<run class="packageOne.Main"
options="in packageOne.Main.main(..),
before main packageOne.Main"/>
<inc-compile tag="20">
<dir-changes updated="packageOne.Main"/>
</inc-compile>
<!-- now failing here. This step passes in non-injar variant. -->
<run class="packageOne.Main"
options="in longer packageOne.Main.main(..),
before main packageOne.Main"/>
<inc-compile tag="30">
<dir-changes added="RunInjarMains"/>
</inc-compile>
<run class="packageOne.Main"
options="in longer packageOne.Main.main(..),
before main InjarOneMain,
before main InjarTwoMain,
before main packageOne.Main"/>
</ajc-test>

<ajc-test dir="bugs" pr="34206"
keywords="knownLimitation"
title="before():execution(new(..)) does not throw NoAspectBoundException"
comment="correct behavior of this case needs to be thought through">
<compile files="AspectInitError.java"/>
<run class="AspectInitError"/>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020"
keywords="knownLimitation"
comment="source loc of binary jp depends on first code, not block start"
title="declare error on handler/method execution with no code on binary ajc 1.1 classes">
<compile files="aspects/MainExecStartLinesErrors.java,../injars/appStartLines-ajc-1.1.jar">
<message kind="error" file="app/MainExecStartLines.java"
line="6" text="execution(void MainExecStartLines.main(String[]))"/>
<message kind="error" file="app/MainExecStartLines.java"
line="17" text="handler(RuntimeException)"/>
</compile>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020"
keywords="knownLimitation"
comment="source loc of binary jp depends on first code, not block start; XXX need javac inlining example"
title="declare error on handler/method execution with no code on binary javac 1.4 classes">
<compile files="aspects/MainExecStartLinesErrors.java,../injars/appStartLines-javac-1.4.jar">
<message kind="error" file="app/MainExecStartLines.java"
line="6" text="execution(void MainExecStartLines.main(String[]))"/>
<message kind="error" file="app/MainExecStartLines.java"
line="17" text="handler(RuntimeException)"/>
</compile>
</ajc-test>

<ajc-test dir="harness"
keywords="command-line-error,knownLimitation"
comment="can't test -help: has to abort, but returns 0, normal status"
title="CLE: -help usage">
<compile badInput="true" options="-help">
<message kind="abort" text="Usage"/>
</compile>
</ajc-test>

<!-- The next three tests are all about the same issue. The source
line for a constructor execution is returned as the first executable
line within the constructor-execution join point rather than the declaration
line of the constructor. Any other definition will require collusion between
the source->bytecode compiler and the weaver and will only work in
those case where such collusion is possible.
-->

<ajc-test dir="new/binaryWarnings/src" pr="37020" keywords="knownLimitation"
title="declare warnings on main - constructor execution">
<compile files="aspects/ConstructorExecutionWarning.java,app/Main.java">
<message kind="warning" file="app/Main.java"
line="23" text="execution(Main.new())"/>
</compile>
<run class="app.Main"/>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020" keywords="knownLimitation"
title="declare warnings on binary javac 1.4 main - constructor execution">
<compile files="aspects/ConstructorExecutionWarning.java,../injars/app-javac-1.4.jar">
<message kind="warning" file="app/Main.java"
line="23" text="execution(Main.new())"/>
</compile>
<run class="app.Main"/>
</ajc-test>

<ajc-test dir="new/binaryWarnings/src" pr="37020" keywords="knownLimitation"
title="declare warnings on binary ajc 1.1 main - constructor execution">
<compile files="aspects/ConstructorExecutionWarning.java,../injars/app-ajc-1.1.jar">
<message kind="warning" file="app/Main.java"
line="23" text="execution(Main.new())"/>
</compile>
<run class="app.Main"/>
</ajc-test>

<ajc-test dir="bugs/handlers" pr="37898" keywords="knownLimitation"
title="advice on handler join points should not throw unpermitted checked exceptions">
<compile files="ExceptionCheckCE.java">
<message kind="warning" line="8" text="expected"/>
<message kind="error" line="25" text="throw checked exception" />
<message kind="error" line="8" text="throw checked exception" />
</compile>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="-nowarn suppresses XLint warnings">
<compile files="XLintWarningTest.java" options="-nowarn"/>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="warn:none suppresses XLint warnings">
<compile files="XLintWarningTest.java" options="-warn:none"/>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="-nowarn suppresses declare warnings">
<compile files="WarningTest.java" options="-nowarn"/>
</ajc-test>

<ajc-test dir="harness" pr="38134" keywords="knownLimitation"
comment="behavior is correct for 1.1 - revisit for 1.2"
title="-warn:none suppresses declare warnings">
<compile files="WarningTest.java" options="-warn:none"/>
</ajc-test>

<ajc-test dir="bugs" pr="38168" keywords="knownLimitation"
title="insertion of lots of advice code can make branch offset for if too large">
<compile files="WideJumps.java"/>
<run class="WideJumps"/>
</ajc-test>

&tests;
</suite>

+ 0
- 1894
tests/src/test/resources/org/aspectj/systemtest/purejava/pureJava-tests.xml
File diff suppressed because it is too large
View File


+ 1894
- 7
tests/src/test/resources/org/aspectj/systemtest/purejava/pureJava.xml
File diff suppressed because it is too large
View File


Loading…
Cancel
Save