1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
<!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"[]>
<!-- Pipelining tests -->
<suite>
<!-- testing the very very basics of pipelining -->
<ajc-test dir="features153/pipelining" title="build two classes">
<compile files="ClassOne.java,ClassTwo.java" options="-verbose"/>
</ajc-test>
<!-- testing the basics when an aspect is included, it is placed at the front deliberately -->
<ajc-test dir="features153/pipelining" title="build one aspect and two classes">
<compile files="SimpleAspect.java,ClassOne.java,ClassTwo.java" options="-verbose -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void SimpleAspect.<clinit>())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void ClassOne.<clinit>())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void ClassTwo.<clinit>())' in Type 'ClassTwo' (ClassTwo.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
</compile>
</ajc-test>
<!-- testing the basics when an aspect is included, aspect should be moved to the front after diet parsing -->
<ajc-test dir="features153/pipelining" title="build two classes and one aspect">
<compile files="ClassOne.java,ClassTwo.java,SimpleAspect.java" options="-verbose -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void SimpleAspect.<clinit>())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void ClassOne.<clinit>())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void ClassTwo.<clinit>())' in Type 'ClassTwo' (ClassTwo.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
</compile>
</ajc-test>
<!-- just building aspects, no classes around - will the sorting behave -->
<ajc-test dir="features153/pipelining" title="build two aspects">
<compile files="SimpleAspect.java,SimpleAspect2.java" options="-verbose -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void SimpleAspect.<clinit>())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect2' (SimpleAspect2.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void SimpleAspect.<clinit>())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void SimpleAspect2.<clinit>())' in Type 'SimpleAspect2' (SimpleAspect2.java:1) advised by before advice from 'SimpleAspect2' (SimpleAspect2.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void SimpleAspect2.<clinit>())' in Type 'SimpleAspect2' (SimpleAspect2.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
</compile>
</ajc-test>
<!-- pointcut in a superclass, subaspect extends the class - pointcut class is supplied after the superclass -->
<ajc-test dir="features153/pipelining" title="aspect extends class">
<compile files="ClassOne.java,SubAspect.java,ClassTwo.java,SuperClass.java" options="-verbose -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void SubAspect.<clinit>())' in Type 'SubAspect' (SubAspect.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void ClassOne.<clinit>())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void ClassTwo.<clinit>())' in Type 'ClassTwo' (ClassTwo.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
<message kind="weave" text="Join point 'staticinitialization(void SuperClass.<clinit>())' in Type 'SuperClass' (SuperClass.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
</compile>
</ajc-test>
<!-- testing eclipse to aspectj annotation transformation -->
<ajc-test dir="features153/pipelining/annotations" title="annotation transformation">
<compile files="AnAspect.java,Foo.java,DecoratedClass.java" options="-1.8 -verbose"/>
</ajc-test>
<!-- does the aspect sorter recognize annotation style aspects, pass the aspects last -->
<ajc-test dir="features153/pipelining" title="recognizing annotation style aspects - 1">
<compile files="ClassOne.java,AtAJAspect.java" options="-1.8 -verbose"/>
</ajc-test>
<!-- does the aspect sorter recognize annotation style aspects (inner type), pass the aspects last -->
<ajc-test dir="features153/pipelining" title="recognizing annotation style aspects - 2">
<compile files="ClassOne.java,AtInnerAJAspect.java" options="-1.8 -verbose"/>
</ajc-test>
<!-- the aspect is multiple layers down in the class... -->
<ajc-test dir="features153/pipelining" title="build one class and deeply nested aspect">
<compile files="ClassOne.java,DeepAspect.java" options="-1.8 -verbose -showWeaveInfo">
<message kind="weave" text="Join point 'staticinitialization(void ClassOne.<clinit>())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'DeepAspect$Inner$SimpleAspect' (DeepAspect.java:4)"/>
</compile>
</ajc-test>
</suite>
|