aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src/test/resources/org/aspectj/systemtest/ajc153/pipelining.xml
blob: 8561e70e472d8e1039dad97d69e368873c991205 (plain)
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.&lt;clinit&gt;())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void ClassOne.&lt;clinit&gt;())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void ClassTwo.&lt;clinit&gt;())' 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.&lt;clinit&gt;())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void ClassOne.&lt;clinit&gt;())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void ClassTwo.&lt;clinit&gt;())' 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.&lt;clinit&gt;())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect2' (SimpleAspect2.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void SimpleAspect.&lt;clinit&gt;())' in Type 'SimpleAspect' (SimpleAspect.java:1) advised by before advice from 'SimpleAspect' (SimpleAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void SimpleAspect2.&lt;clinit&gt;())' in Type 'SimpleAspect2' (SimpleAspect2.java:1) advised by before advice from 'SimpleAspect2' (SimpleAspect2.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void SimpleAspect2.&lt;clinit&gt;())' 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.&lt;clinit&gt;())' in Type 'SubAspect' (SubAspect.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void ClassOne.&lt;clinit&gt;())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void ClassTwo.&lt;clinit&gt;())' in Type 'ClassTwo' (ClassTwo.java:1) advised by before advice from 'SubAspect' (SubAspect.java:2)"/>
        <message kind="weave" text="Join point 'staticinitialization(void SuperClass.&lt;clinit&gt;())' 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.&lt;clinit&gt;())' in Type 'ClassOne' (ClassOne.java:1) advised by before advice from 'DeepAspect$Inner$SimpleAspect' (DeepAspect.java:4)"/>
      </compile>
    </ajc-test>
    

</suite>