/* *******************************************************************
- * Copyright (c) 1999-2001 Xerox Corporation,
+ * Copyright (c) 1999-2001 Xerox Corporation,
* 2002 Palo Alto Research Center, Incorporated (PARC),
* 2003 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://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Xerox/PARC initial implementation
+ * 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:
+ * Xerox/PARC initial implementation
* Wes Isberg resolver
* ******************************************************************/
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
-/**
- * Read an ajc test specification in xml form.
+/**
+ * Read an ajc test specification in xml form.
* Input files should comply with DOCTYPE
*/
public class AjcSpecXmlReader {
* To add new elements or attributes:
* - update the DOCTYPE
* - update setupDigester(..)
- * - new sub-elements should be created
+ * - new sub-elements should be created
* - new attributes should have values set as bean properties
* (possibly by mapping names)
* - new sub-elements should be added to parents
* - update any client writers referring to the DOCTYPE, as necessary.
* - the parent IXmlWriter should delegate to the child component
* as IXmlWriter (or write the subelement itself)
- *
+ *
* Debugging
* - use logLevel = 2 for tracing
* - common mistakes
* - no rule defined (or misdefined) so element ignored
* - property read-only (?)
*/
-
+
// private static final String EOL = "\n";
-
+
/** presumed relative-path to dtd file for any XML files written by writeSuiteToXmlFile */
public static final String DTD_PATH = "../tests/ajcTestSuite.dtd";
-
+
/** expected doc type of AjcSpec XML files */
- public static final String DOCTYPE = "<!DOCTYPE "
+ public static final String DOCTYPE = "<!DOCTYPE "
+ AjcTest.Suite.Spec.XMLNAME + " SYSTEM \"" + DTD_PATH + "\">";
- private static final AjcSpecXmlReader ME
+ private static final AjcSpecXmlReader ME
= new AjcSpecXmlReader();
-
+
/** @return shared instance */
public static final AjcSpecXmlReader getReader() {
return ME;
}
-
+
public static void main(String[] a) throws IOException {
writeDTD(new File("../tests/ajcTestSuite2.dtd"));
}
-
- /**
+
+ /**
* Write a DTD to dtdFile.
* @deprecated
* @param dtdFile the File to write to
LangUtil.throwIaxIfNull(dtdFile, "dtdFile");
PrintWriter out = new PrintWriter(new FileWriter(dtdFile));
try {
- out.println("<!-- document type for ajc test suite - see "
+ out.println("<!-- document type for ajc test suite - see "
+ AjcSpecXmlReader.class.getName() + " -->");
//out.println(getDocType());
} finally {
out.close();
- }
+ }
}
private static final String[] LOG = new String[] {"info", "debug", "trace" };
-
+
// XXX logLevel n>0 causes JUnit tests to fail!
- private int logLevel = 0; // use 2 for tracing
-
+ private int logLevel = 0; // use 2 for tracing
+
private AjcSpecXmlReader() {}
/** @param level 0..2, info..trace */
if (level > 2) {
level = 2;
}
- logLevel = level;
+ logLevel = level;
}
/**
* Print an IXmlWritable to the output file
* with our leader and DOCTYPE.
* @param output the File to write to - overwritten
- * @param tests the List of IXmlWritable to write
* @return null if no warnings detected, warnings otherwise
*/
public String writeSuiteToXmlFile(File output, IXmlWritable topNode) throws IOException {
String parent = output.getParent();
if (null == parent) {
parent = ".";
- }
+ }
String dtdPath = parent + "/" + DTD_PATH;
File dtdFile = new File(dtdPath);
if (!dtdFile.canRead()) {
}
return null;
}
-
- /**
+
+ /**
* Read the specifications for a suite of AjcTest from an XML file.
* This also sets the suite dir in the specification.
* @param file the File must be readable, comply with DOCTYPE.
* @return AjcTest.Suite.Spec read from file
- * @see setLogLevel(int)
+ * @see #setLogLevel(int)
*/
public AjcTest.Suite.Spec readAjcSuite(File file) throws IOException, AbortException {
// setup loggers for digester and beanutils...
if (null != input) {
input.close();
input = null;
- }
+ }
}
AjcTest.Suite.Spec result = holder.spec;
if (null != result) {
}
return result;
}
-
+
private Digester makeDigester(final File suiteFile) {
// implement EntityResolver directly; set is failing
Digester result = new Digester() {
final SuiteResolver resolver = new SuiteResolver(suiteFile);
public InputSource resolveEntity(
- String publicId,
+ String publicId,
String systemId)
throws SAXException {
return resolver.resolveEntity(publicId, systemId);
setupDigester(result);
return result;
}
-
+
/** set up the mapping between the xml and Java. */
private void setupDigester(Digester digester) {
// XXX supply sax parser to ignore white space?
digester.addObjectCreate(compileX, CompilerRun.Spec.class.getName());
//digester.addObjectCreate(compileX + "/file", AbstractRunSpec.WrapFile.class.getName());
digester.addObjectCreate(inccompileX, IncCompilerRun.Spec.class.getName());
- digester.addObjectCreate(runX, JavaRun.Spec.class.getName());
+ digester.addObjectCreate(runX, JavaRun.Spec.class.getName());
digester.addObjectCreate(messageX, SoftMessage.class.getName());
digester.addObjectCreate(messageSrcLocX, SoftSourceLocation.class.getName());
digester.addObjectCreate(dirchangesX, DirChanges.Spec.class.getName());
-
+
// ---- set bean properties for sub-elements created automatically
// -- some remapped - warnings
// - if property exists, map will not be used
digester.addSetProperties(suiteX); // ok to have suite messages and global suite options, etc.
- digester.addSetProperties(ajctestX,
+ digester.addSetProperties(ajctestX,
new String[] { "title", "dir", "pr"},
new String[] { "description", "testDirOffset", "bugId"});
- digester.addSetProperties(compileX,
+ digester.addSetProperties(compileX,
new String[] { "files", "argfiles"},
new String[] { "paths", "argfiles"});
digester.addSetProperties(compileX + "/file");
digester.addSetProperties(inccompileX, "classes", "paths");
- digester.addSetProperties(runX,
+ digester.addSetProperties(runX,
new String[] { "class", "vm", "skipTester", "fork", "vmargs", "aspectpath", "module"},
new String[] { "className", "javaVersion", "skipTester", "fork", "vmArgs", "aspectpath", "module"});
digester.addSetProperties(dirchangesX);
// only file subelement of compile uses text as path... XXX vestigial
digester.addCallMethod(compileX + "/file", "setFile", 0);
- // ---- when subelements are created, add to parent
+ // ---- when subelements are created, add to parent
// add ajctest to suite, runs to ajctest, files to compile, messages to any parent...
// the method name (e.g., "addSuite") is in the parent (SuiteHolder)
// the class (e.g., AjcTest.Suite.Spec) refers to the type of the object created
// addSourceLocation is for the extra
digester.addSetNext(messageSrcLocX, "addSourceLocation", ISourceLocation.class.getName());
digester.addSetNext(dirchangesX, "addDirChanges", DirChanges.Spec.class.getName());
-
+
// can set parent, but prefer to have "knows-about" flow down only...
}
// ------------------------------------------------------------ testing code
- /**
- * Get expected bean properties for introspection tests.
+ /**
+ * Get expected bean properties for introspection tests.
* This should return an expected property for every attribute in DOCTYPE,
* using any mapped-to names from setupDigester.
*/
static BProps[] expectedProperties() {
- return new BProps[]
+ return new BProps[]
{
- new BProps(AjcTest.Suite.Spec.class,
+ new BProps(AjcTest.Suite.Spec.class,
new String[] { "suiteDir"}), // verbose removed
- new BProps(AjcTest.Spec.class,
+ new BProps(AjcTest.Spec.class,
new String[] { "description", "testDirOffset", "bugId"}),
// mapped from { "title", "dir", "pr"}
- new BProps(CompilerRun.Spec.class,
- new String[] { "files", "options",
+ new BProps(CompilerRun.Spec.class,
+ new String[] { "files", "options",
"staging", "badInput", "reuseCompiler", "includeClassesDir",
- "argfiles", "aspectpath", "classpath", "extdirs",
+ "argfiles", "aspectpath", "classpath", "extdirs",
"sourceroots", "xlintfile", "outjar"}),
- new BProps(IncCompilerRun.Spec.class,
+ new BProps(IncCompilerRun.Spec.class,
new String[] { "tag" }),
- new BProps(JavaRun.Spec.class,
- new String[] { "className", "skipTester", "options",
+ new BProps(JavaRun.Spec.class,
+ new String[] { "className", "skipTester", "options",
"javaVersion", "errStreamIsError", "outStreamIsError",
"fork", "vmArgs", "aspectpath"}),
// mapped from { "class", ...}
- new BProps(DirChanges.Spec.class,
+ new BProps(DirChanges.Spec.class,
new String[] { "added", "removed", "updated", "unchanged", "dirToken", "defaultSuffix"}),
-// new BProps(AbstractRunSpec.WrapFile.class,
+// new BProps(AbstractRunSpec.WrapFile.class,
// new String[] { "path"}),
- new BProps(SoftMessage.class,
+ new BProps(SoftMessage.class,
new String[] { "kindAsString", "lineAsString", "text", "details", "file"})
// mapped from { "kind", "line", ...}
};
}
-
- /**
+
+ /**
* This is only to do compile-time checking for the APIs impliedly
* used in setupDigester(..).
* The property setter checks are redundant with tests based on
* expectedProperties().
*/
- private static void setupDigesterCompileTimeCheck() {
+ private static void setupDigesterCompileTimeCheck() {
if (true) { throw new Error("never invoked"); }
AjcTest.Suite.Spec suite = new AjcTest.Suite.Spec();
AjcTest.Spec test = new AjcTest.Spec();
// ajctest.setTestBaseDirOffset((String) null);
// ajctest.setBugId((String) null);
// ajctest.setTestSourceLocation((ISourceLocation) null);
-
+
CompilerRun.Spec crunSpec = new CompilerRun.Spec();
crunSpec.addMessage((IMessage) null);
// XXX crunSpec.addSourceLocation((ISourceLocation) null);
crunSpec.setReuseCompiler(false);
crunSpec.setXlintfile((String) null);
crunSpec.setOutjar((String)null);
-
+
IncCompilerRun.Spec icrunSpec = new IncCompilerRun.Spec();
icrunSpec.addMessage((IMessage) null);
icrunSpec.setTag((String) null);
jrunspec.setClassName((String) null);
jrunspec.addMessage((IMessage) null);
// input s.b. interpretable by Boolean.valueOf(String)
- jrunspec.setSkipTester(true);
+ jrunspec.setSkipTester(true);
jrunspec.setErrStreamIsError("false");
jrunspec.setOutStreamIsError("false");
jrunspec.setAspectpath("");
jrunspec.setFork(false);
jrunspec.setLTW("false");
jrunspec.setException("Error");
-
-
+
+
DirChanges.Spec dcspec = new DirChanges.Spec();
dcspec.setAdded((String) null);
dcspec.setRemoved((String) null);
m.setText((String) null);
m.setKindAsString((String) null);
m.setDetails((String) null);
-
+
SoftSourceLocation sl = new SoftSourceLocation();
- sl.setFile((String) null);
- sl.setLine((String) null);
- sl.setColumn((String) null);
- sl.setEndLine((String) null);
-
+ sl.setFile((String) null);
+ sl.setLine((String) null);
+ sl.setColumn((String) null);
+ sl.setEndLine((String) null);
+
// add attribute setters to validate?
}
-
+
/** top element on Digester stack holds the test suite */
public static class SuiteHolder {
AjcTest.Suite.Spec spec;
this.spec = spec;
}
}
-
+
/** hold class/properties association for testing */
static class BProps {
final Class cl;
this.props = props;
}
}
-
+
/**
* Find file NAME=="ajcTestSuite.dtd" from some reasonably-local
* relative directories.
* XXX bug: commons parser doesn't accept second registration,
* so we override Digester's implementation instead.
- * XXX cannot JUnit test SuiteResolver since they run from
+ * XXX cannot JUnit test SuiteResolver since they run from
* local directory with valid reference
* XXX does not fix JDK 1.4 parser message "unable to resolve without base URI"
* XXX should be able to just set BaseURI instead...
public SuiteResolver(File suiteFile) {
this.suiteFile = suiteFile;
}
-
+
private String getPath(String id) {
// first, try id relative to suite file
return result.getPath();
}
}
- // then try misc paths relative to suite file or current dir
+ // then try misc paths relative to suite file or current dir
final File[] baseDirs = new File[]
{ suiteFileDir, new File(".")
};
final String[] locations = new String[]
- { ".", "..", "../tests", "../../tests",
+ { ".", "..", "../tests", "../../tests",
"../../../tests", "tests", "modules/tests"
};
File baseDir;
return null;
}
public InputSource resolveEntity(
- String publicId,
+ String publicId,
String systemId)
throws SAXException {
InputSource result = null;
- if ((null != systemId) &&
+ if ((null != systemId) &&
systemId.endsWith(NAME)) {
String path = getPath(systemId);
if (null != path) {
// int start = line.indexOf("\"");
// int end = line.lastIndexOf(NAME + "\"");
// if ((0 < start) && (start < end)) {
-// return upper.substring(start+1,
-// end + NAME.length());
+// return upper.substring(start+1,
+// end + NAME.length());
// }
// } else if (!line.startsWith("<?xml")) {
// break; // something else...
-<!-- this defines a DOCTYPE for a suite of ajc tests -->\r
-<!-- element-component mappings are in org.aspectj.testing.xml.AjcSpecXmlReader -->\r
-<!-- element names are determined by the component XMLNAME static variable -->\r
-\r
- <!ELEMENT suite (ajc-test*)>\r
- <!ATTLIST suite suiteDir CDATA #IMPLIED >\r
- <!-- permits leading inc-compile, will fail -->\r
- <!ELEMENT ajc-test ((compile | inc-compile | run)*)>\r
- <!ATTLIST ajc-test title CDATA #REQUIRED >\r
- <!ATTLIST ajc-test dir CDATA #REQUIRED >\r
- <!ATTLIST ajc-test pr CDATA #IMPLIED >\r
- <!ATTLIST ajc-test keywords CDATA #IMPLIED >\r
- <!ATTLIST ajc-test comment CDATA #IMPLIED >\r
-\r
- <!ELEMENT compile (dir-changes*,message*)>\r
- <!ATTLIST compile staging CDATA #IMPLIED >\r
- <!ATTLIST compile badInput CDATA #IMPLIED >\r
- <!ATTLIST compile files CDATA #IMPLIED >\r
- <!ATTLIST compile reuseCompiler CDATA #IMPLIED >\r
- <!ATTLIST compile includeClassesDir CDATA #IMPLIED >\r
- <!ATTLIST compile argfiles CDATA #IMPLIED >\r
- <!ATTLIST compile aspectpath CDATA #IMPLIED >\r
- <!ATTLIST compile classpath CDATA #IMPLIED >\r
- <!ATTLIST compile extdirs CDATA #IMPLIED >\r
- <!ATTLIST compile options CDATA #IMPLIED >\r
- <!ATTLIST compile sourceroots CDATA #IMPLIED >\r
- <!ATTLIST compile xlintfile CDATA #IMPLIED >\r
- <!ATTLIST compile outjar CDATA #IMPLIED >\r
-\r
- <!ELEMENT inc-compile (dir-changes*,message*)>\r
- <!ATTLIST inc-compile tag CDATA #REQUIRED >\r
- <!ATTLIST inc-compile fresh CDATA #IMPLIED >\r
- <!ATTLIST inc-compile checkModel CDATA #IMPLIED >\r
-\r
- <!ELEMENT run (dir-changes*,message*)>\r
- <!ATTLIST run class CDATA #REQUIRED >\r
- <!ATTLIST run skipTester CDATA #IMPLIED >\r
- <!ATTLIST run vm CDATA #IMPLIED >\r
- <!ATTLIST run options CDATA #IMPLIED >\r
- <!ATTLIST run errStreamIsError CDATA #IMPLIED >\r
- <!ATTLIST run outStreamIsError CDATA #IMPLIED >\r
- <!ATTLIST run fork CDATA #IMPLIED >\r
- <!ATTLIST run vmargs CDATA #IMPLIED >\r
- <!ATTLIST run aspectpath CDATA #IMPLIED >\r
- <!ATTLIST run classpath CDATA #IMPLIED >\r
- <!ATTLIST run LTW CDATA #IMPLIED >\r
- <!ATTLIST run usefullltw CDATA #IMPLIED >\r
- <!ATTLIST run exception CDATA #IMPLIED >\r
-\r
- <!ELEMENT message (source*)>\r
- <!ATTLIST message kind (abort | fail | error | warning | info | Xlint) #REQUIRED >\r
- <!ATTLIST message line CDATA #IMPLIED >\r
- <!ATTLIST message text CDATA #IMPLIED >\r
- <!ATTLIST message file CDATA #IMPLIED >\r
- <!ATTLIST message details CDATA #IMPLIED >\r
-\r
- <!ELEMENT source (#PCDATA)>\r
- <!ATTLIST source line CDATA #IMPLIED >\r
- <!ATTLIST source file CDATA #IMPLIED >\r
-\r
- <!ELEMENT dir-changes (#PCDATA)>\r
- <!ATTLIST dir-changes dirToken (classes | run) #IMPLIED >\r
- <!ATTLIST dir-changes defaultSuffix (.class) #IMPLIED >\r
- <!ATTLIST dir-changes added CDATA #IMPLIED >\r
- <!ATTLIST dir-changes removed CDATA #IMPLIED >\r
- <!ATTLIST dir-changes updated CDATA #IMPLIED >\r
- <!ATTLIST dir-changes unchanged CDATA #IMPLIED >\r
- <!ATTLIST dir-changes expDir CDATA #IMPLIED >\r
- <!ATTLIST dir-changes fastFail CDATA #IMPLIED >\r
- <!ATTLIST dir-changes delay CDATA #IMPLIED >\r
-\r
+<!-- this defines a DOCTYPE for a suite of ajc tests -->
+<!-- element-component mappings are in org.aspectj.testing.xml.AjcSpecXmlReader -->
+<!-- element names are determined by the component XMLNAME static variable -->
+
+ <!ELEMENT suite (ajc-test | comment)*>
+ <!ATTLIST suite suiteDir CDATA #IMPLIED >
+
+ <!-- permits leading inc-compile, will fail -->
+ <!ELEMENT ajc-test ((compile | inc-compile | run | weave | file | ant | comment)*)>
+ <!ATTLIST ajc-test title CDATA #REQUIRED >
+ <!ATTLIST ajc-test dir CDATA #REQUIRED >
+ <!ATTLIST ajc-test pr CDATA #IMPLIED >
+ <!ATTLIST ajc-test keywords CDATA #IMPLIED >
+ <!ATTLIST ajc-test comment CDATA #IMPLIED >
+ <!ATTLIST ajc-test vm CDATA #IMPLIED >
+
+ <!ELEMENT compile (dir-changes*,message*)>
+ <!ATTLIST compile comment CDATA #IMPLIED >
+ <!ATTLIST compile staging CDATA #IMPLIED >
+ <!ATTLIST compile badInput CDATA #IMPLIED >
+ <!ATTLIST compile files CDATA #IMPLIED >
+ <!ATTLIST compile reuseCompiler CDATA #IMPLIED >
+ <!ATTLIST compile includeClassesDir CDATA #IMPLIED >
+ <!ATTLIST compile argfiles CDATA #IMPLIED >
+ <!ATTLIST compile aspectpath CDATA #IMPLIED >
+ <!ATTLIST compile aspectsFiles CDATA #IMPLIED >
+ <!ATTLIST compile classpath CDATA #IMPLIED >
+ <!ATTLIST compile modulepath CDATA #IMPLIED >
+ <!ATTLIST compile inpath CDATA #IMPLIED >
+ <!ATTLIST compile extdirs CDATA #IMPLIED >
+ <!ATTLIST compile options CDATA #IMPLIED >
+ <!ATTLIST compile sourceroots CDATA #IMPLIED >
+ <!ATTLIST compile xlintfile CDATA #IMPLIED >
+ <!ATTLIST compile outjar CDATA #IMPLIED >
+ <!ATTLIST compile outxmlfile CDATA #IMPLIED >
+
+ <!ELEMENT inc-compile (dir-changes*,message*)>
+ <!ATTLIST inc-compile tag CDATA #REQUIRED >
+ <!ATTLIST inc-compile fresh CDATA #IMPLIED >
+ <!ATTLIST inc-compile checkModel CDATA #IMPLIED >
+
+ <!ELEMENT run (dir-changes*,message*,stdout*,stderr*)>
+ <!-- Either class or modulepath is required -->
+ <!ATTLIST run class CDATA #IMPLIED >
+ <!ATTLIST run modulepath CDATA #IMPLIED >
+ <!ATTLIST run module CDATA #IMPLIED >
+ <!ATTLIST run skipTester CDATA #IMPLIED >
+ <!ATTLIST run vm CDATA #IMPLIED >
+ <!ATTLIST run options CDATA #IMPLIED >
+ <!ATTLIST run errStreamIsError CDATA #IMPLIED >
+ <!ATTLIST run outStreamIsError CDATA #IMPLIED >
+ <!ATTLIST run fork CDATA #IMPLIED >
+ <!ATTLIST run vmargs CDATA #IMPLIED >
+ <!ATTLIST run aspectpath CDATA #IMPLIED >
+ <!ATTLIST run classpath CDATA #IMPLIED >
+ <!ATTLIST run ltw CDATA #IMPLIED >
+ <!ATTLIST run usefullltw CDATA #IMPLIED >
+ <!ATTLIST run exception CDATA #IMPLIED >
+ <!ATTLIST run xlintfile CDATA #IMPLIED >
+
+ <!ELEMENT message (source*)>
+ <!ATTLIST message kind (abort | fail | error | warning | info | Xlint | weave) #IMPLIED >
+ <!ATTLIST message line CDATA #IMPLIED >
+ <!ATTLIST message text CDATA #IMPLIED >
+ <!ATTLIST message file CDATA #IMPLIED >
+ <!ATTLIST message details CDATA #IMPLIED >
+
+ <!ELEMENT source (#PCDATA)>
+ <!ATTLIST source line CDATA #IMPLIED >
+ <!ATTLIST source file CDATA #IMPLIED >
+
+ <!ELEMENT dir-changes (#PCDATA)>
+ <!ATTLIST dir-changes dirToken (classes | run) #IMPLIED >
+ <!ATTLIST dir-changes defaultSuffix (.class) #IMPLIED >
+ <!ATTLIST dir-changes added CDATA #IMPLIED >
+ <!ATTLIST dir-changes removed CDATA #IMPLIED >
+ <!ATTLIST dir-changes updated CDATA #IMPLIED >
+ <!ATTLIST dir-changes unchanged CDATA #IMPLIED >
+ <!ATTLIST dir-changes expDir CDATA #IMPLIED >
+ <!ATTLIST dir-changes fastFail CDATA #IMPLIED >
+ <!ATTLIST dir-changes delay CDATA #IMPLIED >
+
+ <!ATTLIST dir-changes dirToken (classes | run) #IMPLIED >
+ <!ATTLIST dir-changes defaultSuffix (.class) #IMPLIED >
+ <!ATTLIST dir-changes added CDATA #IMPLIED >
+ <!ATTLIST dir-changes removed CDATA #IMPLIED >
+ <!ATTLIST dir-changes updated CDATA #IMPLIED >
+ <!ATTLIST dir-changes unchanged CDATA #IMPLIED >
+ <!ATTLIST dir-changes expDir CDATA #IMPLIED >
+ <!ATTLIST dir-changes fastFail CDATA #IMPLIED >
+ <!ATTLIST dir-changes delay CDATA #IMPLIED >
+
+ <!ELEMENT stdout (line*)>
+ <!ATTLIST stdout ordered CDATA #IMPLIED >
+
+ <!ELEMENT stderr (line*)>
+ <!ATTLIST stderr ordered CDATA #IMPLIED >
+
+ <!ELEMENT line (line*)>
+ <!ATTLIST line text CDATA #REQUIRED >
+ <!ATTLIST line vm CDATA #IMPLIED >
+
+ <!ELEMENT weave (message*)>
+ <!ATTLIST weave classesFiles CDATA #REQUIRED >
+ <!ATTLIST weave aspectsFiles CDATA #REQUIRED >
+ <!ATTLIST weave options CDATA #REQUIRED >
+ <!ATTLIST weave xlintfile CDATA #IMPLIED >
+
+ <!ELEMENT file EMPTY>
+ <!ATTLIST file deletefile CDATA #IMPLIED >
+ <!ATTLIST file renamefrom CDATA #IMPLIED >
+ <!ATTLIST file renameto CDATA #IMPLIED >
+
+ <!ELEMENT ant (stdout*,stderr*)>
+ <!ATTLIST ant file CDATA #IMPLIED >
+ <!ATTLIST ant target CDATA #IMPLIED >
+ <!ATTLIST ant verbose CDATA #IMPLIED >
+
+ <!ELEMENT comment (#PCDATA)>
<message kind="error" line="4" file="DisjunctVarBinding_3.java" text="ambiguous binding of parameter(s) a, b across '||' in pointcut"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/IfPerThis"
pr="62458" title="An if() pointcut inside a perthis() clauses an ABORT - null pointer exception in ajc">
<compile files="Testcase1.java">
<message kind="error" line="27" text="if() pointcut designator cannot be used directly in a per clause"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/IfPerThis"
pr="62458" title="An if() pointcut inside a perthis() clauses an ABORT - null pointer exception in ajc">
<compile files="Testcase2.java"/>
<run class="Testcase2"/>
</ajc-test>
-
+
<ajc-test dir="bugs/IfPerThis"
pr="62458" title="An if() pointcut inside a perthis() clauses an ABORT - null pointer exception in ajc">
<compile files="Testcase3.java">
<message kind="error" line="2" text="if() pointcut designator cannot be used directly in a per clause"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/bug70619"
pr="70619" title="compiler aborts with 'conflicting dominates orders' with circular declare precedences">
<compile files="Precedence.java">
<message kind="error" line="0" text="conflicting declare precedence"/>
</compile>
- <compile files="Conflict.java,Order2.aj,Order1.aj">
+ <compile files="Conflict.java,Order2.aj,Order1.aj">
<message kind="error" line="0" text="conflicting declare precedence"/>
</compile>
<compile files="Conflict.java,Order1.aj,Order2.aj">
<message kind="error" line="0" text="conflicting declare precedence"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs"
pr="53999" title="'can't bind type' message has $ for . in type name for declare soft">
<compile files="Cosmetic.java">
<message kind="error" line="9" text="can't bind type name 'unknown.Error'"/>
</compile>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs/intertypeOverrides"
pr="69459" title="Hiding of Instance Methods by static methods">
<compile files="IntertypeOverrides.java">
<message kind="error" line="8" text="void Sub.m() cannot override void Super.m(); overridden method is static"/>
</compile>
<compile files="Superclass.java,Subclass.java,Aspect1.java">
- <message file="Aspect1.java" kind="error" line="2"
+ <message file="Aspect1.java" kind="error" line="2"
text="void Subclass.staticMethod() cannot override void Superclass.staticMethod(); overridden method is static"/>
</compile>
<compile files="Superclass.java,Subclass.java,Aspect2.java">
text="void Subclass.nonstaticMethod() cannot override void Superclass.nonstaticMethod(); overriding method is static"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="new"
title="if(false) optimisation" pr="48990">
<compile files="IfFalse.aj" options="-1.4"/>
<run class="IfFalse"/>
</ajc-test>
-
+
<ajc-test dir="new"
title="if(true) optimisation" pr="48990">
<compile files="IfTrue.aj" options="-1.4"/>
<run class="IfTrue"/>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs/abstractITDs"
pr="64331" title="java.lang.NullPointerException in WeaverMessageHandler class">
<compile files="A.java,C.java" aspectpath="B.jar">
<message kind="error" line="1" text="must implement abstract inter-type declaration: void A.foo()"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/pr64262"
title="ClassCastException at BcelRenderer.java:169" pr="64262">
<compile files="PrimitiveCoercionInExactTypePatternMatching.java"/>
</ajc-test>
-
+
<ajc-test dir="bugs"
pr="61536" title="Front-end bug, shouldn't allow patterns of the form foo.., should be foo..*">
<compile files="EllipsesStar.java">
<message kind="error" line="12" text="Syntax error on token"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs"
pr="67774" title="Nullpointer-Exception when defining a withincode() pointcut">
<compile files="WithincodeNPE01.java">
<message kind="warning" line="11" text="In String ctor"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="60015"
title="NPE, Incorrect XLint:unmatchedSuperTypeInCall warning">
<compile files="IncorrectXlintOnInterface.java">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/typeVisibilityProblem" pr="67591"
title="invalid warning indicating no match when a match really occurs">
<compile files="Main.java">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="71273"
title="RuntimeException thrown: Could not find instruction: org.apache.bcel.generic.B2I">
<compile files="NoByteToInt.java"/>
<run class="NoByteToInt"/>
</ajc-test>
-
+
<ajc-test dir="bugs/AroundAdviceJPs" pr="71377"
title="Cannot advise private method call in around advice">
<compile files="JoinPointInAroundAdvice.java"/>
<run class="JoinPointInAroundAdvice"/>
</ajc-test>
-
+
<ajc-test dir="bugs/AroundAdviceJPs" pr="71377"
title="Cannot advise private field sets in around advice">
<compile files="FieldJoinPointsInAroundAdvice.java"/>
<run class="FieldJoinPointsInAroundAdvice"/>
</ajc-test>
-
+
<ajc-test dir="bugs/AroundAdviceJPs" pr="71377"
title="Cannot advise private field gets in around advice">
<compile files="FieldGetJoinPointsInAroundAdvice.java"/>
</ajc-test>
-->
-<!-- these next two tests commented out as they take minutes to run - reinstate if you need to
- investigate 59208 for any reason
+<!-- these next two tests commented out as they take minutes to run - reinstate if you need to
+ investigate 59208 for any reason
<ajc-test dir="bugs/pr59208" pr="59208"
title="Weaver fails in BCEL for large classes">
<compile files="Foo.java, A.aj">
<ajc-test dir="bugs/pr59208" pr="59208"
title="Weaver fails in BCEL for large classes (binary)">
- <compile
+ <compile
aspectpath="test.jar"
inpath="classes">
<message kind="error" line="0" text="constant pool too big"></message>
<ajc-test dir="bugs" pr="61572"
title="ITDs on inner classes should be static context">
<compile files="PR61572.aj">
- <message kind="error" line="19" text="Cannot make a static reference to the non-static field zzz"></message>
+ <message kind="error" line="19" text="Cannot make a static reference to the non-static field zzz"/>
</compile>
</ajc-test>
<message kind="error" line="29" text="ambiguous binding of parameter(s) x across '||' in pointcut"/>
</compile>
</ajc-test>
-
+
<!-- should NOT raise error, despite Oxford expectations to the contrary -->
<ajc-test dir="bugs/oxford" pr="62475"
title="resolution of IT field inits">
<compile files="PR62475.java">
</compile>
</ajc-test>
-
- <ajc-test
- dir="bugs/invalidAbsoluteTypeName"
+
+ <ajc-test
+ dir="bugs/invalidAbsoluteTypeName"
pr="65925"
title="Valid but inaccessible type names should not be flagged by XLint:invalidAbsoluteTypeName">
<compile files="False_InvalidAbsoluteTypeName.java">
</compile>
<run class="False_InvalidAbsoluteTypeName"/>
</ajc-test>
-
+
<ajc-test dir="bugs/PR68991" pr="68991"
title="intertype initialisers should match field set pointcuts">
<compile files="Simple.java"/>
<run class="Simple"/>
</ajc-test>
-
+
<ajc-test dir="bugs/PR68991" pr="68991"
title="intertype initialisers should match field set pointcuts (oxford testcase)">
<compile files="Oxford.java"/>
<run class="Oxford"/>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="54421"
title="Compile time declarations (warning and error) do not accept string concatenation (with +)">
<compile files="decwStrings.java">
<message kind="warning" line="39" text="abcdefghijklmnopqrstuvwxyz"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="54421"
title="Compile time declarations (warning and error) do not accept string concatenation (with +) (2)">
<compile files="decwStringsErroneous.java">
<message kind="error" line="22"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/oxford" pr="61768"
title="scope for inter-type methods">
<compile files="PR61768.java">
<compile files="PrivateCall2.java,PrivateCall3.java"/>
<run class="def.PrivateCall3"/>
</ajc-test>
-
+
<ajc-test dir="bugs/doYouHaveVisiblePrivates" pr="71372"
title="NoSuchMethodError calling private method from around advice in inner aspect (3)">
<compile files="PrivateCallInstance.java"/>
<run class="PrivateCallInstance"/>
</ajc-test>
-
+
<ajc-test dir="bugs/doYouHaveVisiblePrivates" pr="71372"
title="NoSuchMethodError calling private method from around advice in inner aspect (4)">
<compile files="PrivateCall_Instance_Package1.java,PrivateCall_Instance_Package2.java"/>
<compile files="a/ITD.aj,b/B.aj"/>
<run class="b.B"/>
</ajc-test>
-
+
<ajc-test dir="bugs/privilegedNPE" pr="67579"
title="NPE on privileged aspect error (2)">
<compile files="b/B.aj,a/ITD.aj"/>
<compile files="b/B.aj,a/ITD.aj"/>
<run class="b.B"/>
</ajc-test>
-
+
<ajc-test dir="bugs/privilegedAccess" pr="67578"
title="Privileged Aspect Access Problem Across Packages (2)">
<compile files="b/B_notPrivileged.aj,a/ITD.aj">
<message kind="error" line="7" text="The method returnNothing(Object) from the type ITD is not visible"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="62642"
title="proper handling of ExceptionInIntializer inside clinit in presence of after throwing advice">
<compile files="pr62642.java"/>
<message kind="error" line="12" text="Cannot make a static reference to the non-static method clone() from the type Object"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="design/sourceLines" pr="37020"
title="wrong line for method execution join point">
<compile files="TestSourceLines.java">
title="The introduction on interface causes the interface implementation class error (1)">
<compile files="PublicPublic.java"/>
</ajc-test>
-
-
+
+
<ajc-test dir="bugs/interfaceITDs" pr="70794"
title="The introduction on interface causes the interface implementation class error (2)">
<compile files="PackagePublic.java"/>
</ajc-test>
-
+
<ajc-test dir="bugs/interfaceITDs" pr="70794"
title="The introduction on interface causes the interface implementation class error (3)">
<compile files="PackagePackage.java">
<message kind="error" line="17" text="abstract intertype method declaration 'void PackagePackage.world()' on interface PackagePackage must be declared public (compiler limitation)"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs/interfaceITDs" pr="70794"
title="The introduction on interface causes the interface implementation class error (4)">
<compile files="PublicPackage.java">
<message kind="error" line="2" text="The abstract pointcut tracingScope can only be defined in an abstract aspect"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="72699"
title="Bogus error message: The abstract method ajc$pointcut$$tracingScope$a2 in type Tracing can only be defined by an abstract class (2)">
<compile files="BogusMessage2.java">
<message kind="error" line="2" text="The abstract pointcut tracingScope can only be defined in an aspect"/>
</compile>
</ajc-test>
-
- <ajc-test dir="bugs/pr70404" pr="70404"
+
+ <ajc-test dir="bugs/pr70404" pr="70404"
title="passing null to array arguments confuzes static join point signature. (1)">
<compile files="Main.java,MainAspect.java"/>
<run class="dk.infimum.aspectjtest.Main"/>
</ajc-test>
- <ajc-test dir="bugs/pr70404" pr="70404"
+ <ajc-test dir="bugs/pr70404" pr="70404"
title="passing null to array arguments confuzes static join point signature. (2)">
<compile files="Main2.java,MainAspect.java"/>
<run class="dk.infimum.aspectjtest.Main2"/>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="72528"
title="around advice throws java.lang.VerifyError at runtime">
<compile files="ArrayCloning.java"/>
<message kind="error" line="13" text="Unhandled"/>
</compile>
</ajc-test>
-
- <ajc-test
- dir="bugs"
+
+ <ajc-test
+ dir="bugs"
pr="75129"
title="NPE on thisJoinPoint mistake">
<compile files="TjpMistake.java">
<compile files="CounterTest01.java"/>
<run class="CounterTest01"/>
</ajc-test>
-
+
<ajc-test dir="cflow" pr="76030" title="Optimization of cflow - shared counters (2)">
<compile files="CounterTest02.java" options="-1.4"/>
<run class="CounterTest02"/>
</ajc-test>
-
+
<ajc-test dir="cflow" pr="76030" title="Optimization of cflow - shared stacks (3)">
<compile files="CounterTest03.java"/>
<run class="CounterTest03"/>
</ajc-test>
-
+
<ajc-test dir="cflow" pr="76030" title="Optimization of cflow - counters (4)">
<compile files="CounterTest04.java" options="-1.4"/>
<run class="CounterTest04"/>
</ajc-test>
-
+
<ajc-test dir="cflow" pr="76030" title="Optimization of cflow - counters with abstract pointcuts (5)">
<compile files="CounterTest05.java"/>
<run class="CounterTest05"/>
</ajc-test>
-
+
<ajc-test dir="bugs/pr76096" pr="76096" title="Anonymous classes unaware of introductions into abstract classes">
<compile files="ConcreteClassA.java"/>
<run class="ConcreteClassA"/>
</ajc-test>
-
+
<ajc-test dir="bugs" pr="74952" title="before,after not (cflow(within(Trace*))) prints nothing">
<compile files="WhatsGoingOn.java"/>
<run class="WhatsGoingOn"/>
</ajc-test>
-
+
</suite>
<ajc-test dir="bugs150" pr="107059" title="target(@Foo *)">
<compile files="pr107059_2.aj" options="-1.5">
- <message kind="error" line="4" text="wildcard type pattern not allowed"></message>
+ <message kind="error" line="4" text="wildcard type pattern not allowed"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150" pr="108050" title="signature matching in override scenario">
<compile files="pr108050.aj" options="-1.5">
- <message kind="warning" line = "2" text="servlet request"></message>
- <message kind="warning" line = "7" text="servlet request"></message>
- <message kind="warning" line = "21" text="servlet request"></message>
+ <message kind="warning" line="2" text="servlet request"/>
+ <message kind="warning" line="7" text="servlet request"/>
+ <message kind="warning" line="21" text="servlet request"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150/" pr="107953" title="@AfterThrowing with no formal specified">
<compile files="pr107953.java" options="-1.5">
- <message kind="error" line="8" text="throwing formal 'RuntimeException' must be declared as a parameter in the advice signature"></message>
+ <message kind="error" line="8"
+ text="throwing formal 'RuntimeException' must be declared as a parameter in the advice signature"/>
</compile>
</ajc-test>
<ajc-test title="matching against Object[]" pr="72668" dir="bugs150">
<compile files="pr72668.aj" options="-1.5">
- <message kind="error" line="3" text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"></message>
- <message kind="error" line="10" text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"></message>
+ <message kind="error" line="3"
+ text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"/>
+ <message kind="error" line="10"
+ text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"/>
</compile>
</ajc-test>
<ajc-test dir="bugs" pr="61568" title="Various kinds of ambiguous bindings">
<compile files="AmbiguousBindings.aj" options="-1.4">
- <message line="17" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
- <message line="19" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
- <message line="21" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
- <message line="23" text="ambiguous binding of parameter(s) x across '||' in pointcut"></message>
- <message line="25" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
+ <message line="17" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
+ <message line="19" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
+ <message line="21" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
+ <message line="23" text="ambiguous binding of parameter(s) x across '||' in pointcut"/>
+ <message line="25" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
</compile>
</ajc-test>
<ajc-test dir="bugs" pr="61658" title="ambiguous args">
<compile files="PR61658.java" options="-1.5">
- <message line="17" text="ambiguous binding of parameter(s) a, b across '||' in pointcut"></message>
+ <message line="17" text="ambiguous binding of parameter(s) a, b across '||' in pointcut"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150" pr="107858" title="inlined field access in proceed call">
<compile files="pr107858.aj" options="-1.5">
- <message kind="error" line="9" text="too many arguments to proceed, expected 0"></message>
- <message kind="error" line="10" text="too many arguments to proceed, expected 0"></message>
+ <message kind="error" line="9" text="too many arguments to proceed, expected 0"/>
+ <message kind="error" line="10" text="too many arguments to proceed, expected 0"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150/pr87530" pr="87530" title="final itd methods on interfaces">
<compile files="FinalITDMOnInterface.aj" options="-1.5">
- <message kind="error" line="12" text="Cannot override the final method from A.TestInterface"></message>
+ <message kind="error" line="12" text="Cannot override the final method from A.TestInterface"/>
</compile>
<compile files="FinalITDMOnInterface2.aj" options="-1.5">
<!--message kind="error" line="8" text="Cannot override the final method from A.TestInterface"></message-->
- <message kind="error" line="8" text="can't override final void A$TestInterface.m()"></message>
+ <message kind="error" line="8" text="can't override final void A$TestInterface.m()"/>
</compile>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 1" dir="hasmember">
<compile files="HasMethod.aj" options="-1.5 -XhasMember"/>
- <run class="HasMethod"></run>
+ <run class="HasMethod"/>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 2" dir="hasmember">
<compile files="HasMethodInherited.aj" options="-1.5 -XhasMember"/>
- <run class="HasMethodInherited"></run>
+ <run class="HasMethodInherited"/>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 3" dir="hasmember">
<compile files="HasPrivateMethodInherited.aj" options="-1.5 -XhasMember"/>
- <run class="HasPrivateMethodInherited"></run>
+ <run class="HasPrivateMethodInherited"/>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 4" dir="hasmember">
<ajc-test title="declare parents : hasfield(..) - 1" dir="hasmember">
<compile files="HasField.aj" options="-1.5 -XhasMember"/>
- <run class="HasField"></run>
+ <run class="HasField"/>
</ajc-test>
<ajc-test title="declare parents : hasfield(..) - 2" dir="hasmember">
<compile files="HasFieldInherited.aj" options="-1.5 -XhasMember"/>
- <run class="HasFieldInherited"></run>
+ <run class="HasFieldInherited"/>
</ajc-test>
<ajc-test title="declare parents : hasfield(..) - 3" dir="hasmember">
<compile files="HasPrivateFieldInherited.aj" options="-1.5 -XhasMember"/>
- <run class="HasPrivateFieldInherited"></run>
+ <run class="HasPrivateFieldInherited"/>
</ajc-test>
<!-- Annotation binding tests -->
<compile files="BaseTypes.java,DecaTypeBin5.aj" options="-1.5" xlintfile="ignoreTypeNotExposed.properties">
<message kind="error" line="15" text="The annotation @ColorM is disallowed for this location"/>
<message kind="error" line="16" text="The annotation @ColorC is disallowed for this location"/>
- <message king="error" line="17" text="A is not a valid target for annotation ColorA"/>
+ <message kind="error" line="17" text="A is not a valid target for annotation ColorA"/>
<message kind="error" line="18" text="The annotation @ColorF is disallowed for this location"/>
<message kind="error" line="19" text="The annotation @ColorP is disallowed for this location"/>
<message kind="error" line="20" text="The annotation @ColorL is disallowed for this location"/>
<ajc-test dir="bugs153/pr149560" title="incorrect staticinitialization weaving - codestyle">
<compile files="CodeStyle.java" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void MyAspect.<clinit>())' in Type 'MyAspect' (CodeStyle.java:3) advised by after advice from 'MyAspect' (CodeStyle.java:4)"/>
- <message kind="weave" test="Join point 'staticinitialization(void CodeStyle.<clini>())' in Type 'CodeStyle' (CodeStyle.java:9) advised by after advice from 'MyAspect' (CodeStyle.java:4)"/>
+ <message kind="weave" text="Join point 'staticinitialization(void CodeStyle.<clinit>())' in Type 'CodeStyle' (CodeStyle.java:9) advised by after advice from 'MyAspect' (CodeStyle.java:4)"/>
</compile>
<run class="CodeStyle">
<stdout>
<ajc-test dir="bugs153/pr149560" title="incorrect staticinitialization weaving - annstyle">
<compile files="AnnStyle.java" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void MyAspect.<clinit>())' in Type 'MyAspect' (AnnStyle.java:5) advised by after advice from 'MyAspect' (AnnStyle.java:7)"/>
- <message kind="weave" test="Join point 'staticinitialization(void AnnStyle.<clini>())' in Type 'AnnStyle' (AnnStyle.java:12) advised by after advice from 'MyAspect' (AnnStyle.java:7)"/>
+ <message kind="weave" text="Join point 'staticinitialization(void AnnStyle.<clinit>())' in Type 'AnnStyle' (AnnStyle.java:12) advised by after advice from 'MyAspect' (AnnStyle.java:7)"/>
</compile>
<run class="AnnStyle">
<stdout>
<compile files="TestAroundClosure.aj" options="-1.4"/>
<run class="HelloWorld" ltw="aop-aroundclosure.xml">
<stdout>
- <line text="&rt; ConcreteAspectWithAroundClosure()"/>
+ <line text="> ConcreteAspectWithAroundClosure()"/>
<line text="< ConcreteAspectWithAroundClosure()"/>
<line text="? void HelloWorld.main(String[])"/>
- <line text="&rt; HelloWorld()"/>
+ <line text="> HelloWorld()"/>
<line text="< HelloWorld()"/>
<line text="Hello World!"/>
</stdout>
<ajc-test dir="bugs1612/pr345515" title="anno copying">
<compile files="Code.java" options="-1.5"/>
-<run class="Code"></run>
+ <run class="Code"/>
</ajc-test>
<ajc-test dir="bugs1612/pr327867" title="synthetic methods">
<ajc-test dir="bugs1612/pr315398" title="verifyerror - 2">
<compile files="Code2.java" options="-1.5">
</compile>
-<run class="Code2"></run>
+ <run class="Code2"/>
</ajc-test>
<ajc-test dir="bugs1612/pr335810" title="rawtype warning">
<ajc-test dir="bugs164/pr268689" title="generics aspects npe">
<compile files="GenericAspect.aj ConcreteAspect.aj" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr267559" title="generics and itd npe">
<compile files="IMarker.java ClassB.java Aspect.java ClassA.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266564" title="annotation style long">
<compile files="AA.java" options="-1.5"/>
<run class="business.AA"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266564" title="annotation style long - 2">
<compile files="CC.java" options="-1.5"/>
<run class="business.CC"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266420" title="unused private warning">
<compile files="A.java" options="-1.5 -warn:unusedPrivate"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266420" title="unused private warning - 2">
<compile files="B.java" options="-1.5 -warn:unusedPrivate">
<message kind="warning" text="The value of the field B.i is not used"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266420" title="unused private warning - 3">
<compile files="C.java" options="-1.5 -warn:unusedPrivate">
<message kind="warning" text="The value of the field C.j is not used"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr265729" title="aspectpath model">
<compile files="Aspect.java Orange.java Strawberry.java Fruit.java" outjar="library.jar" options="-emacssym"/>
<compile files="Orange.java Strawberry.java Fruit.java" aspectpath="library.jar" options="-emacssym"/>
<!--
-->
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266220" title="generics and aop.xml">
<compile files="Code.java"/>
<compile files="Isolator.java" outjar="aspects.jar" options="-1.5"/>
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266165" title="optimizing if for constant reference - 1">
<compile files="NeverWeave.java" options="-1.5 -Xlint:ignore -showWeaveInfo"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266165" title="optimizing if for constant reference - 2">
<compile files="AlwaysWeave.java" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266165" title="optimizing if for constant reference - 3">
<compile files="NeverWeave2.java" options="-1.5 -Xlint:ignore -showWeaveInfo"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr266165" title="optimizing if for constant reference - 4">
<compile files="AlwaysWeave2.java" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point"/>
<message kind="warning" line="26" text="advice defined"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr265695" title="new syntax for inherited anno - 1">
<compile files="AspNew.aj" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr265695" title="new syntax for inherited anno - 3">
<compile files="AspNew2.aj" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr265418" title="varargs">
<compile files="A.java" options="-1.5"/>
<run class="A">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs164" title="parser problem for array subtypes">
<compile files="PR148508.java"/>
<run class="PR148508">
</run>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr265360" title="incorrect resolution of Date">
<compile files="Foo.java Main.java" options="-1.5">
<message kind="warning" text="no match for this type name: Date "/>
- <message kind="warning" test="advice defined in"/>
+ <message kind="warning" text="advice defined in"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr233032" title="dual preClinit">
<compile files="A.java" options="-1.5"/>
<run class="A"/>
</ajc-test>
-
+
<ajc-test dir="features164/aopconfig/one" title="aop config - 1">
<compile files="A.java A2.java B.java foo.xml" options="-1.5 -showWeaveInfo -xmlConfigured">
<message kind="weave" text="Join point 'staticinitialization(void A.<clinit>())' in Type 'A' (A.java:1) advised by before advice from 'A' (A.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void B.<clinit>())' in Type 'B' (B.java:1) advised by before advice from 'A' (A.java:2)"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="features164/aopconfig/one" title="aop config - 2">
<compile files="A.java A2.java B.java B2.java foo2.xml" options="-1.5 -showWeaveInfo -xmlConfigured">
<message kind="weave" text="Join point 'staticinitialization(void B.<clinit>())' in Type 'B' (B.java:1) advised by before advice from 'A' (A.java:2)"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="features164/aopconfig/two" title="aop config - 3">
<!-- type pattern in the scope in foo.xml is complete nonsense -->
<compile files="A.java B.java foo.xml" options="-1.5 -Xlint:ignore -xmlConfigured">
<message kind="error" text="Unable to parse scope as type pattern"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="features164/aopconfig/one" title="aop config - 4">
<!-- excluding a type -->
<compile files="A.java A2.java B.java B2.java case4.xml" options="-1.5 -Xlint:ignore -xmlConfigured -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void B.<clinit>())' in Type 'B' (B.java:1) advised by before advice from 'A' (A.java:2)"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="features164/aopconfig/one" title="aop config - 5">
<!-- excluding a type -->
<compile files="A.java A2.java B.java B2.java case5.xml" options="-1.5 -Xlint:ignore -xmlConfigured -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void A2.<clinit>())' in Type 'A2' (A2.java:1) advised by before advice from 'A' (A.java:2)"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr263310" title="inner handles">
<compile files="HandleTestingAspect.java" options="-1.5 -emacssym -Xlint:ignore"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr263666" title="around advice handles">
<compile files="x/A.java x/B.java x/OverrideOptions.aj" options="-1.5 -emacssym"/>
</ajc-test>
-
+
<ajc-test dir="bugs164" title="ajcthis not read">
<compile files="pr195090.java" options="-1.5 -warn:+unusedArgument">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr256779" title="anno decprecedence">
<compile files="ThisAspect.java OtherAspect.java" options="-1.5"/>
<run class="com.ThisAspect" ltw="aop.xml"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr262905" title="recursive cflow">
<compile files="A.java" options="-1.5">
<message kind="warning" line="5" text="advice defined"/>
<message kind="error" line="3" text="circular"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr194314" title="broken lvt - 1">
<compile files="Service.java IService.java Main.java ServiceInterceptor.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr194314" title="broken lvt - 2">
<compile files="Service.java IService.java Main.java ServiceInterceptorCodeStyle.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr194314" title="broken lvt - 3">
<compile files="ITDOne.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs164/pr262509" title="debugging before advice">
<compile files="Foo.java" options="-1.5"/>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr262509" title="debugging before advice - 2">
<compile files="Foo2.java" options="-1.5 -preserveAllLocals"/>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr262509" title="debugging before advice - 3">
<compile files="Foo3.java" options="-1.5 -preserveAllLocals"/>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr246393" title="rogue errors - 1">
<compile files="D.java" options="-1.5">
<message kind="error" line="2" text="error on token"/>
</compile>
- </ajc-test>
+ </ajc-test>
<ajc-test dir="bugs164/pr262257" title="name clash">
<compile files="C.java" options="-1.5">
</compile>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr260384" title="compiling spring">
<compile files="Broken.java" options="-1.5">
</compile>
- </ajc-test>
+ </ajc-test>
<ajc-test dir="bugs164/pr260384" title="compiling spring - 2">
<compile files="Broken2.java" options="-1.5">
</compile>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr260384" title="compiling spring - 3">
<compile files="C.java" options="-1.5 -emacssym"/>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr260384" title="compiling spring - 4">
<compile files="D.java" options="-1.5">
</compile>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr164016" title="ataspectj decp 164016">
<compile files="Code.aj" options="-1.5"/>
<run class="test.Code"/>
- </ajc-test>
-
-
+ </ajc-test>
+
+
<ajc-test dir="bugs164/pr164016" title="ataspectj decp 164016 - 2">
<compile files="Code.java TargetBad.java TargetGood.java" aspectpath="code.jar" options="-1.5"/>
<run class="test.Code"/>
- </ajc-test>
-
+ </ajc-test>
+
<ajc-test dir="bugs164/pr258788" title="ataspectj decp 258788">
<compile files="NameAware.java NameManager.java NameManagerImpl.java StartClass.java TargetClass.java TestAspect.java" options="-1.5"/>
<run class="com.StartClass"/>
- </ajc-test>
-
-</suite>
\ No newline at end of file
+ </ajc-test>
+
+</suite>
<ajc-test dir="bugs170/pr382723" title="generic aspect">
<compile files="FooAspect.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr382723" title="generic aspect 2">
<compile files="FooAspect2.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr382723" title="generic aspect 3">
<compile files="FooAspect3.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr382723" title="generic aspect 4">
<compile files="Foo.java" options="-1.5 -showWeaveInfo">
<message kind="weave" text="Join point 'constructor-call(void java.util.LinkedList.<init>())' in Type 'Foo' (Foo.java:41) advised by around advice from 'Bar' (Foo.java:14)"/>
</stdout>
</run>
</ajc-test>
-
-
+
+
<!-- no declare parents, only ITD -->
<ajc-test dir="bugs170/pr382189/one" title="covariant generics 1">
<compile files="A.java A_ITD.aj B.java SuperA.java SuperB.java" options="-1.5"/>
</ajc-test>
-
+
<!-- now declare parents and ITD -->
<ajc-test dir="bugs170/pr382189/two" title="covariant generics 2">
<compile files="A.java A_ITD.aj B.java SuperA.java SuperB.java" options="-1.5"/>
</ajc-test>
-
+
<!-- now run it -->
<ajc-test dir="bugs170/pr382189/three" title="covariant generics 3">
<compile files="A.java A_ITD.aj B.java SuperA.java SuperB.java" options="-1.5"/>
<run class="A"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr382435/one" title="covariant generic itds 1">
<compile files="bug/A.java" options="-1.5"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr382435/two" title="covariant generic itds 2">
<compile files="bug/A.java" options="-1.5"/>
<run class="bug.A"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr382189" title="covariant generics">
<compile files="covbug/A.java covbug/A_ITD.aj covbug/B.java covbug/SuperA.java covbug/SuperB.java" options="-1.5"/>
<!-- <run class="Foo">
<line text="@Anno()"/></stdout>
</run> -->
</ajc-test>
-
+
<ajc-test dir="bugs170/pr377130" title="missing annos on priv aspects">
<compile files="Foo.java" options="-1.5"/>
<run class="Foo">
<line text="@Anno()"/></stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr377130" title="missing annos on priv aspects - 2">
<compile files="Foo2.java" options="-1.5"/>
<run class="Foo2">
<compile inpath="code.jar" aspectpath="aspects.jar" options="-showWeaveInfo">
<message kind="weave" text="Join point 'constructor-call(void R.<init>())'"/>
</compile>
- <!--
+ <!--
if we had a 1.7 vm we could use this:
<compile files="RAj.java" options="-1.7 -Xlint:ignore"/>
<run class="R" ltw="aop.xml">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/ltw" title="dec at field ordering 2">
<compile files="Anno.java Main.java TriggerAll.java MyObject.java" options="-1.5"/>
<run class="ch.tests.Main">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/ltw" title="dec at field ordering ltw 1">
<compile files="Anno.java Main.java MyObject.java" options="-1.5"/>
<compile files="TriggerAll.java" options="-Xlint:ignore -1.5 "/>
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec at method 2">
<compile files="Hello.java Anno2.java" options="-1.5"/>
<run class="Hello" ltw="aop2.xml">
</stderr>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec at field">
<compile files="Hello2.java Anno.java" options="-1.5"/>
<run class="Hello2" ltw="aop3.xml">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec anno - variants 1">
<compile files="Hello4.java Anno4.java" options="-1.5"/>
<run class="Hello4" ltw="aop4.xml">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec anno - variants 2">
<compile files="Hello5.java Anno5.java" options="-1.5"/>
<run class="Hello5" ltw="aop5.xml">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec anno - multiple values">
<compile files="Hello6.java Anno6.java" options="-1.5"/>
<run class="Hello6" ltw="aop6.xml">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec anno - multiple values and spaces">
<compile files="Hello6.java Anno6.java" options="-1.5"/>
<run class="Hello6" ltw="aop6a.xml">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/xmldefs" title="xml defined dec anno - type">
<compile files="Hello7.java Anno7.java" options="-1.5"/>
<run class="Hello7" ltw="aop7.xml">
</compile>
<run class="AspectTest"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/transientTjpFields" title="transient tjp fields">
<compile files="Code.java" options="-Xset:makeTjpFieldsTransient=true">
</compile>
<compile files="PerThis.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="pertarget">
<compile files="PerTarget.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="percflow">
<compile files="PerCflow.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="pertypewithin">
<compile files="PerTypeWithin.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="diamond 1">
<compile files="Diamond.java" options="-1.5">
<message kind="error" line="11" text="'<>' operator is not allowed for source level below 1.7"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="diamond 2">
<compile files="Diamond.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="diamond itd 1">
<compile files="DiamondITD.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="literals 1">
<compile files="Literals.java" options="-1.5">
<message kind="error" line="8" text="Underscores can only be used with source level 1.7 or greater"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="literals 2">
<compile files="Literals.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="literals itd 1">
<compile files="LiteralsITD.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="string switch 1">
<compile files="StringSwitch.java" options="-1.5">
<message kind="error" line="9" text="Cannot switch on a value of type String for source level below 1.7. Only convertible int values or enum variables are permitted"/>
<compile files="StringSwitch.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="multi catch 1">
<compile files="MultiCatch.java" options="-1.5">
<message kind="error" line="6" text="Multi-catch parameters are not allowed for source level below 1.7"/>
<compile files="MultiCatch.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="multi catch with handler 1">
<compile files="MultiCatchWithHandler.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="multi catch aspect 1">
<compile files="MultiCatchAspect.java" options="-1.7">
</compile>
<compile files="TryResources.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="try resources 2">
<compile files="TryResourcesAspect.java" options="-1.7">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/language" title="multi catch with handler 2">
<compile files="MultiCatchWithHandler2.java" options="-1.7">
</compile>
- <run class="MultiCatchWithHandler2"></run>
+ <run class="MultiCatchWithHandler2"/>
</ajc-test>
-
+
<ajc-test dir="bugs170/sanity" title="sanity 1">
<compile files="DeclareAtType.java" options="-1.5">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr363979" title="missing impl">
<compile files="Example.java" options="-1.5"/>
<run class="Example">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr363979" title="missing impl 2">
<compile files="Example2.java" options="-1.5"/>
<run class="Example2">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs170/pr364380" title="stackoverflow">
<compile files="X.aj" options="-1.5" outjar="foo.jar"/>
<compile files="C.java" options="-1.5" inpath="foo.jar">
<message kind="warning" text="An advice already exists for setting an owner"/>
</compile>
</ajc-test>
-
+
</suite>
</ajc-test>
<ajc-test dir="bugs172/pr398246" title="if pointcut names 4">
- <compile files="Code4.java" options="-1.5"></compile>
+ <compile files="Code4.java" options="-1.5"/>
<compile files="Code4.java" options="-1.5" outjar="aspects.jar"/>
<run class="Code4" options="-1.5">
<stdout>
<line text="advice"/>
</stdout>
</run>
- <compile files="CodeExtra4.java" aspectpath="aspects.jar" options="-1.5"></compile>
+ <compile files="CodeExtra4.java" aspectpath="aspects.jar" options="-1.5"/>
<run class="CodeExtra4" options="-1.5">
<stdout>
<line text="advice"/>
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs1810/500035" title="ataspectj binding 2">
<compile options="-1.8" files="Code2.java"/>
<run class="Code2">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs1810/500035" title="ataspectj binding 3 -XnoInline">
<compile options="-1.8 -XnoInline" files="Code3.java"/>
<run class="Code3">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs1810/500035" title="ataspectj binding 4">
<compile options="-1.8" files="Code3.java"/>
<run class="Code3">
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs1810/501656" title="generics exception">
<compile options="-1.8 -parameters" files="ApplicationException.java ApplicationExceptionHandler.java"/>
</ajc-test>
<ajc-test dir="bugs1810/493554" title="pertarget">
<compile options="-1.8" files="Dep.java FooAspect.aj Cmd.java"/>
- <run class="example.kusedep.Cmd"></run>
+ <run class="example.kusedep.Cmd"/>
</ajc-test>
<ajc-test dir="bugs1810/ambig" title="ambiguous message - 18">
<message kind="error" text="The method toList() in the type Collectors is not applicable for the arguments (Inner::getId)"/>
</compile>
</ajc-test>
-
+
</suite>
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs183/436653/abstract" title="suppress type not found - abstract 1">
<compile options="-1.8 -Xlint:ignore" files="A.java" outjar="codeA.jar"/>
<compile options="-1.8" files="AA.java X.java" classpath="codeA.jar" outjar="aspects.jar"/>
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs183/436653" title="suppress type not found 4">
<compile options="-1.8 -Xlint:ignore" files="X.java" outjar="aspects.jar"/>
<compile options="-1.8" files="Runner.java"/>
</stdout>
</run>
</ajc-test>
-
+
<ajc-test dir="bugs183/436653" title="suppress type not found 5">
<compile options="-1.8 -Xlint:ignore" files="X.java" outjar="aspects.jar"/>
- <compile class="-1.8" files="A.java"/>
+ <compile options="-1.8" files="A.java"/>
<compile options="-1.8" files="Runner.java"/>
<run class="Runner" ltw="aop.xml">
<stdout>
</stdout>
</run>
</ajc-test>
-
+
<!-- annotation style aspect, missing type so deactivated -->
<ajc-test dir="bugs183/436653" title="suppress type not found 6">
<compile options="-1.8 -Xlint:ignore" files="AnnoX.java" outjar="aspects.jar"/>
</stdout>
</run>
</ajc-test>
-
+
<!-- annotation style aspect, type not missing so not deactivated -->
<ajc-test dir="bugs183/436653" title="suppress type not found 7">
<compile options="-1.8 -Xlint:ignore" files="AnnoX.java A.java" outjar="aspects.jar"/>
</stdout>
</run>
</ajc-test>
-
+
<!-- annotation style aspect, type not missing so not deactivated -->
<ajc-test dir="bugs183/436653" title="suppress type not found 8">
<compile options="-1.8 -Xlint:ignore" files="AnnoX.java A.java" outjar="aspects.jar"/>
<message kind="info" text="*deactivating aspect 'XA2' as it requires type 'B' which cannot be found on the classpath"/>
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs183/436653" title="suppress type not found 2">
<compile options="-1.8" files="A.java" outjar="typeA.jar"/>
<!-- adviceDidNotMatch messages are suppressed here -->
<compile options="-1.8" files="Code.java" aspectpath="aspects.jar">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs183/436653" title="suppress type not found">
<compile options="-1.8" files="A.java" outjar="typeA.jar"/>
<!-- adviceDidNotMatch messages are suppressed here -->
<compile options="-1.8" files="ControlFlow.java ForReplacer.java ControlFlowCommand.java ControlFlowDriver.java">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs183/444398" title="abstract aspect npe">
<compile options="-1.8" files="Bottom.java Middle.java Top.java">
</compile>
</ajc-test>
-
+
<ajc-test dir="bugs183/442425" title="anno style decp">
<compile options="-1.8" files="EntityController.java IEntityController.java MyAnnotatedController.java EntityControllerAspect.java EntityMongoController.java">
<message kind="error" line="23" text="Type mismatch: cannot convert from MyAnnotatedController<String> to IEntityController<String>"/>
</run>
-->
</ajc-test>
-
+
<ajc-test dir="bugs183/443477" title="verifyerror">
<compile options="-1.7" files="Coo.java"/>
<run class="Coo"/>
</ajc-test>
-
+
</suite>
</ajc-test>
<ajc-test dir="bugs187/469889" title="broken java">
-<!--
+<!--
<compile files="A.java B.java AbstractA.java BImpl.java Main.java" options="-1.8"/>
-->
<compile files="Code.java" options="-1.8"/>
<compile files="B.java" options="-XhasMember -1.8 -showWeaveInfo">
<message kind="weave" text="Extending interface set for type 'B' (B.java) to include 'java.io.Serializable' (B.java)"/>
</compile>
-<run class="B"></run>
+ <run class="B"/>
</ajc-test>
</suite>
<ajc-test dir="bugs190/modules" title="weave module">
<compile files="aspect1/Azpect1.java" inpath="module1/module-one.jar" outjar="runner.jar" options="-1.8"/>
- <java classpath="runner.jar" class="a.b.c.Code"/>
+ <run classpath="runner.jar" class="a.b.c.Code"/>
</ajc-test>
<ajc-test dir="bugs190/various" title="setting static final outside clinit">
<ajc-test dir="bugs150" pr="107059" title="target(@Foo *)">
<compile files="pr107059_2.aj" options="-1.9">
- <message kind="error" line="4" text="wildcard type pattern not allowed"></message>
+ <message kind="error" line="4" text="wildcard type pattern not allowed"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150" pr="108050" title="signature matching in override scenario">
<compile files="pr108050.aj" options="-1.9">
- <message kind="warning" line = "2" text="servlet request"></message>
- <message kind="warning" line = "7" text="servlet request"></message>
- <message kind="warning" line = "21" text="servlet request"></message>
+ <message kind="warning" line="2" text="servlet request"/>
+ <message kind="warning" line="7" text="servlet request"/>
+ <message kind="warning" line="21" text="servlet request"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150/" pr="107953" title="@AfterThrowing with no formal specified">
<compile files="pr107953.java" options="-1.9">
- <message kind="error" line="8" text="throwing formal 'RuntimeException' must be declared as a parameter in the advice signature"></message>
+ <message kind="error" line="8"
+ text="throwing formal 'RuntimeException' must be declared as a parameter in the advice signature"/>
</compile>
</ajc-test>
<ajc-test title="matching against Object[]" pr="72668" dir="bugs150">
<compile files="pr72668.aj" options="-1.9">
- <message kind="error" line="3" text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"></message>
- <message kind="error" line="10" text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"></message>
+ <message kind="error" line="3"
+ text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"/>
+ <message kind="error" line="10"
+ text="incompatible return type applying to method-execution(java.lang.Number[] pr72668.getThoseInts())"/>
</compile>
</ajc-test>
<ajc-test dir="bugs" pr="61568" title="Various kinds of ambiguous bindings">
<compile files="AmbiguousBindings.aj" options="-1.4">
- <message line="17" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
- <message line="19" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
- <message line="21" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
- <message line="23" text="ambiguous binding of parameter(s) x across '||' in pointcut"></message>
- <message line="25" text="ambiguous binding of parameter(s) foo across '||' in pointcut"></message>
+ <message line="17" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
+ <message line="19" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
+ <message line="21" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
+ <message line="23" text="ambiguous binding of parameter(s) x across '||' in pointcut"/>
+ <message line="25" text="ambiguous binding of parameter(s) foo across '||' in pointcut"/>
</compile>
</ajc-test>
<ajc-test dir="bugs" pr="61658" title="ambiguous args">
<compile files="PR61658.java" options="-1.9">
- <message line="17" text="ambiguous binding of parameter(s) a, b across '||' in pointcut"></message>
+ <message line="17" text="ambiguous binding of parameter(s) a, b across '||' in pointcut"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150" pr="107858" title="inlined field access in proceed call">
<compile files="pr107858.aj" options="-1.9">
- <message kind="error" line="9" text="too many arguments to proceed, expected 0"></message>
- <message kind="error" line="10" text="too many arguments to proceed, expected 0"></message>
+ <message kind="error" line="9" text="too many arguments to proceed, expected 0"/>
+ <message kind="error" line="10" text="too many arguments to proceed, expected 0"/>
</compile>
</ajc-test>
<ajc-test dir="bugs150/pr87530" pr="87530" title="final itd methods on interfaces">
<compile files="FinalITDMOnInterface.aj" options="-1.9">
- <message kind="error" line="12" text="Cannot override the final method from A.TestInterface"></message>
+ <message kind="error" line="12" text="Cannot override the final method from A.TestInterface"/>
</compile>
<compile files="FinalITDMOnInterface2.aj" options="-1.9">
<!--message kind="error" line="8" text="Cannot override the final method from A.TestInterface"></message-->
- <message kind="error" line="8" text="can't override final void A$TestInterface.m()"></message>
+ <message kind="error" line="8" text="can't override final void A$TestInterface.m()"/>
</compile>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 1" dir="hasmember">
<compile files="HasMethod.aj" options="-1.9 -XhasMember"/>
- <run class="HasMethod"></run>
+ <run class="HasMethod"/>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 2" dir="hasmember">
<compile files="HasMethodInherited.aj" options="-1.9 -XhasMember"/>
- <run class="HasMethodInherited"></run>
+ <run class="HasMethodInherited"/>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 3" dir="hasmember">
<compile files="HasPrivateMethodInherited.aj" options="-1.9 -XhasMember"/>
- <run class="HasPrivateMethodInherited"></run>
+ <run class="HasPrivateMethodInherited"/>
</ajc-test>
<ajc-test title="declare parents : hasmethod(..) - 4" dir="hasmember">
<ajc-test title="declare parents : hasfield(..) - 1" dir="hasmember">
<compile files="HasField.aj" options="-1.9 -XhasMember"/>
- <run class="HasField"></run>
+ <run class="HasField"/>
</ajc-test>
<ajc-test title="declare parents : hasfield(..) - 2" dir="hasmember">
<compile files="HasFieldInherited.aj" options="-1.9 -XhasMember"/>
- <run class="HasFieldInherited"></run>
+ <run class="HasFieldInherited"/>
</ajc-test>
<ajc-test title="declare parents : hasfield(..) - 3" dir="hasmember">
<compile files="HasPrivateFieldInherited.aj" options="-1.9 -XhasMember"/>
- <run class="HasPrivateFieldInherited"></run>
+ <run class="HasPrivateFieldInherited"/>
</ajc-test>
<!-- Annotation binding tests -->
<compile files="BaseTypes.java,DecaTypeBin5.aj" options="-1.9" xlintfile="ignoreTypeNotExposed.properties">
<message kind="error" line="15" text="The annotation @ColorM is disallowed for this location"/>
<message kind="error" line="16" text="The annotation @ColorC is disallowed for this location"/>
- <message king="error" line="17" text="A is not a valid target for annotation ColorA"/>
+ <message kind="error" line="17" text="A is not a valid target for annotation ColorA"/>
<message kind="error" line="18" text="The annotation @ColorF is disallowed for this location"/>
<message kind="error" line="19" text="The annotation @ColorP is disallowed for this location"/>
<message kind="error" line="20" text="The annotation @ColorL is disallowed for this location"/>
<suite>
<ajc-test title="empty class" dir="bringup">
- <compile files="EmptyClass.java"></compile>
+ <compile files="EmptyClass.java"/>
</ajc-test>
<ajc-test title="empty aspect" dir="bringup">
- <compile files="EmptyAspect.aj"></compile>
+ <compile files="EmptyAspect.aj"/>
</ajc-test>
-
-</suite>
\ No newline at end of file
+
+</suite>