diff options
author | aclement <aclement> | 2006-08-22 08:20:36 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-08-22 08:20:36 +0000 |
commit | 50f8ecc4339442c7abaf4d3a9995c1434b768ef2 (patch) | |
tree | 75ca9caf60a4a9bd592b162dbc79146188fe1fc6 /tests/model | |
parent | 8b393cc90d5d63171154713e5a73044a1a2fddaf (diff) | |
download | aspectj-50f8ecc4339442c7abaf4d3a9995c1434b768ef2.tar.gz aspectj-50f8ecc4339442c7abaf4d3a9995c1434b768ef2.zip |
refactored tests for 154552 - use new model testing structure
Diffstat (limited to 'tests/model')
36 files changed, 732 insertions, 0 deletions
diff --git a/tests/model/PR141730_1/pr141730.aj b/tests/model/PR141730_1/pr141730.aj new file mode 100644 index 000000000..1698abd3a --- /dev/null +++ b/tests/model/PR141730_1/pr141730.aj @@ -0,0 +1,33 @@ +aspect A { + + pointcut p() : execution(* *.*(..)) || execution(*.new(..)); + + before() : p() { + + } + +} + +class C { + + public C() {} + + public void method() {} + + public void intMethod(int i) {} + + public void stringMethod(String s) {} + + public void myClassMethod(MyClass s) {} + + public void twoArgsMethod(int i, String s) {} + + public static void main(String[] args) {} + + public void multiMethod(String[][] s) {} + + public void intArray(int[] i) {} + +} + +class MyClass {} diff --git a/tests/model/expected/pr115607.txt b/tests/model/expected/pr115607.txt new file mode 100644 index 000000000..dfee43ad1 --- /dev/null +++ b/tests/model/expected/pr115607.txt @@ -0,0 +1,24 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr115607.java [java source file] TEST_SANDBOX\pr115607.java:1: + import declarations [import reference] + I [annotation] TEST_SANDBOX\pr115607.java:1: + Simple [class] TEST_SANDBOX\pr115607.java:3: + pr115607 [aspect] TEST_SANDBOX\pr115607.java:5: + declare @type: Simple : @I [declare @type] TEST_SANDBOX\pr115607.java:6: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) {pr115607.java}pr115607`declare @type (annotates) {pr115607.java[Simple +(targets=1) {pr115607.java[Simple (annotated by) {pr115607.java}pr115607`declare @type +(targets=1) {pr115607.java (annotates) {pr115607.java +(targets=1) {pr115607.java (annotated by) {pr115607.java +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +annotation=1 +FileMapSize=1 +aspect=1 +RelationshipMapSize=3 +java source file=2 +declare @type=1 +import reference=1 +class=1 diff --git a/tests/model/expected/pr120356.txt b/tests/model/expected/pr120356.txt new file mode 100644 index 000000000..97d46d160 --- /dev/null +++ b/tests/model/expected/pr120356.txt @@ -0,0 +1,31 @@ +=== MODEL STATUS REPORT ========= After a failed batch build +<root> [java source file] + A.java [java source file] TEST_SANDBOX\A.java:1: + import declarations [import reference] + org.aspectj.lang.annotation.DeclareError [import reference] TEST_SANDBOX\A.java:4: + org.aspectj.lang.annotation.DeclareWarning [import reference] TEST_SANDBOX\A.java:3: + org.aspectj.lang.annotation.Aspect [import reference] TEST_SANDBOX\A.java:2: + A [aspect] TEST_SANDBOX\A.java:7: + warning [field] TEST_SANDBOX\A.java:10: + error [field] TEST_SANDBOX\A.java:13: + C.java [java source file] TEST_SANDBOX\C.java:1: + import declarations [import reference] + C [class] TEST_SANDBOX\C.java:3: + warningMethod() [method] TEST_SANDBOX\C.java:5: + badMethod() [method] TEST_SANDBOX\C.java:8: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a failed batch build +(targets=1) {A.java}A^warning (matched by) {C.java[C~warningMethod +(targets=1) {C.java[C~badMethod (matches declare) {A.java}A^error +(targets=1) {C.java[C~warningMethod (matches declare) {A.java}A^warning +(targets=1) {A.java}A^error (matched by) {C.java[C~badMethod +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +FileMapSize=2 +aspect=1 +RelationshipMapSize=4 +java source file=3 +import reference=5 +class=1 +field=2 +method=2 diff --git a/tests/model/expected/pr131932.txt b/tests/model/expected/pr131932.txt new file mode 100644 index 000000000..ff0ad9e9b --- /dev/null +++ b/tests/model/expected/pr131932.txt @@ -0,0 +1,32 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr131932.aj [java source file] TEST_SANDBOX\pr131932.aj:1: + import declarations [import reference] + java.util.List [import reference] TEST_SANDBOX\pr131932.aj:1: + Slide74 [aspect] TEST_SANDBOX\pr131932.aj:3: + Bar [class] TEST_SANDBOX\pr131932.aj:13: + lts [field] TEST_SANDBOX\pr131932.aj:14: + Bar.getFirst() [inter-type method] TEST_SANDBOX\pr131932.aj:5: + Foo.Foo(java.util.List<T>) [inter-type constructor] TEST_SANDBOX\pr131932.aj:9: + Bar.children [inter-type field] TEST_SANDBOX\pr131932.aj:11: + Foo [class] TEST_SANDBOX\pr131932.aj:19: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) *pr131932.aj}Slide74)Foo.Foo)QList\<TT;>; (declared on) *pr131932.aj[Foo +(targets=2) *pr131932.aj}Slide74[Bar (aspect declarations) *pr131932.aj}Slide74)Bar.getFirst +(targets=2) *pr131932.aj}Slide74[Bar (aspect declarations) *pr131932.aj}Slide74)Bar.children +(targets=1) *pr131932.aj}Slide74)Bar.children (declared on) *pr131932.aj}Slide74[Bar +(targets=1) *pr131932.aj[Foo (aspect declarations) *pr131932.aj}Slide74)Foo.Foo)QList\<TT;>; +(targets=1) *pr131932.aj}Slide74)Bar.getFirst (declared on) *pr131932.aj}Slide74[Bar +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +import reference=2 +aspect=1 +inter-type field=1 +class=2 +inter-type constructor=1 +RelationshipMapSize=5 +FileMapSize=1 +field=1 +inter-type method=1 +java source file=2 diff --git a/tests/model/expected/pr132130.txt b/tests/model/expected/pr132130.txt new file mode 100644 index 000000000..812748022 --- /dev/null +++ b/tests/model/expected/pr132130.txt @@ -0,0 +1,30 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr132130.aj [java source file] TEST_SANDBOX\pr132130.aj:1: + import declarations [import reference] + basic [aspect] TEST_SANDBOX\pr132130.aj:1: + declare @method: * debit(..) : @Secured(role = "supervisor") [declare @method] TEST_SANDBOX\pr132130.aj:3: + declare @constructor: BankAccount+.new(..) : @Secured(role = "supervisor") [declare @constructor] TEST_SANDBOX\pr132130.aj:4: + BankAccount [class] TEST_SANDBOX\pr132130.aj:7: + BankAccount(java.lang.String,int) [constructor] TEST_SANDBOX\pr132130.aj:9: + debit(long,long) [method] TEST_SANDBOX\pr132130.aj:11: + Secured [annotation] TEST_SANDBOX\pr132130.aj:15: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) *pr132130.aj[BankAccount~BankAccount~QString;~I (annotated by) *pr132130.aj}basic`declare @constructor!2 +(targets=1) *pr132130.aj}basic`declare @constructor!2 (annotates) *pr132130.aj[BankAccount~BankAccount~QString;~I +(targets=1) *pr132130.aj[BankAccount~debit~J~J (annotated by) *pr132130.aj}basic`declare @method +(targets=1) *pr132130.aj}basic`declare @method (annotates) *pr132130.aj[BankAccount~debit~J~J +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=1 +import reference=1 +aspect=1 +declare @method=1 +constructor=1 +declare @constructor=1 +class=1 +annotation=1 +RelationshipMapSize=4 +FileMapSize=1 +java source file=2 diff --git a/tests/model/expected/pr141730_1.txt b/tests/model/expected/pr141730_1.txt new file mode 100644 index 000000000..3ca7a5502 --- /dev/null +++ b/tests/model/expected/pr141730_1.txt @@ -0,0 +1,54 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr141730.aj [java source file] TEST_SANDBOX\pr141730.aj:1: + import declarations [import reference] + A [aspect] TEST_SANDBOX\pr141730.aj:1: + p() [pointcut] TEST_SANDBOX\pr141730.aj:3: + before(): p.. [advice] TEST_SANDBOX\pr141730.aj:5: + C [class] TEST_SANDBOX\pr141730.aj:11: + C() [constructor] TEST_SANDBOX\pr141730.aj:13: + method() [method] TEST_SANDBOX\pr141730.aj:15: + intMethod(int) [method] TEST_SANDBOX\pr141730.aj:17: + stringMethod(java.lang.String) [method] TEST_SANDBOX\pr141730.aj:19: + myClassMethod(MyClass) [method] TEST_SANDBOX\pr141730.aj:21: + twoArgsMethod(int,java.lang.String) [method] TEST_SANDBOX\pr141730.aj:23: + main(java.lang.String[]) [method] TEST_SANDBOX\pr141730.aj:25: + multiMethod(java.lang.String[][]) [method] TEST_SANDBOX\pr141730.aj:27: + intArray(int[]) [method] TEST_SANDBOX\pr141730.aj:29: + MyClass [class] TEST_SANDBOX\pr141730.aj:33: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) *pr141730.aj[C~intMethod~I (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~main~\[QString; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~intArray~\[I (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~twoArgsMethod~I~QString; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~stringMethod~QString; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~myClassMethod~LMyClass; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj}A (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~C (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~multiMethod~\[[String; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[MyClass (advised by) *pr141730.aj}A&before +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj}A +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[MyClass +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~C +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~method +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~intMethod~I +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~stringMethod~QString; +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~myClassMethod~LMyClass; +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~twoArgsMethod~I~QString; +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~main~\[QString; +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~multiMethod~\[[String; +(targets=11) *pr141730.aj}A&before (advises) *pr141730.aj[C~intArray~\[I +(targets=1) *pr141730.aj[C~method (advised by) *pr141730.aj}A&before +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=8 +import reference=1 +aspect=1 +constructor=1 +class=2 +advice=1 +pointcut=1 +RelationshipMapSize=12 +FileMapSize=1 +java source file=2 diff --git a/tests/model/expected/pr141730_2.txt b/tests/model/expected/pr141730_2.txt new file mode 100644 index 000000000..010773f01 --- /dev/null +++ b/tests/model/expected/pr141730_2.txt @@ -0,0 +1,38 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr141730.aj [java source file] TEST_SANDBOX\pr141730.aj:1: + import declarations [import reference] + java.util.List [import reference] TEST_SANDBOX\pr141730.aj:1: + A [aspect] TEST_SANDBOX\pr141730.aj:3: + p() [pointcut] TEST_SANDBOX\pr141730.aj:5: + before(): p.. [advice] TEST_SANDBOX\pr141730.aj:7: + C [class] TEST_SANDBOX\pr141730.aj:13: + genericMethod(java.util.List<java.lang.String>) [method] TEST_SANDBOX\pr141730.aj:15: + genericMethod2(MyGenericClass<java.lang.String,MyClass>) [method] TEST_SANDBOX\pr141730.aj:16: + MyClass [class] TEST_SANDBOX\pr141730.aj:20: + MyGenericClass [class] TEST_SANDBOX\pr141730.aj:22: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) *pr141730.aj[MyGenericClass (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[MyClass (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~genericMethod2~PMyGenericClass\<QString;LMyClass;>; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj[C~genericMethod~QList\<QString;>; (advised by) *pr141730.aj}A&before +(targets=1) *pr141730.aj}A (advised by) *pr141730.aj}A&before +(targets=6) *pr141730.aj}A&before (advises) *pr141730.aj}A +(targets=6) *pr141730.aj}A&before (advises) *pr141730.aj[MyClass +(targets=6) *pr141730.aj}A&before (advises) *pr141730.aj[MyGenericClass +(targets=6) *pr141730.aj}A&before (advises) *pr141730.aj[C +(targets=6) *pr141730.aj}A&before (advises) *pr141730.aj[C~genericMethod~QList\<QString;>; +(targets=6) *pr141730.aj}A&before (advises) *pr141730.aj[C~genericMethod2~PMyGenericClass\<QString;LMyClass;>; +(targets=1) *pr141730.aj[C (advised by) *pr141730.aj}A&before +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=2 +import reference=2 +aspect=1 +class=3 +advice=1 +pointcut=1 +RelationshipMapSize=7 +FileMapSize=1 +java source file=2 diff --git a/tests/model/expected/pr141730_3.txt b/tests/model/expected/pr141730_3.txt new file mode 100644 index 000000000..2b3c3fb34 --- /dev/null +++ b/tests/model/expected/pr141730_3.txt @@ -0,0 +1,23 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + foo [package] + MyFoo.java [java source file] TEST_SANDBOX\MyFoo.java:1: + import declarations [import reference] + MyFoo [class] TEST_SANDBOX\MyFoo.java:3: + callMain() [method] TEST_SANDBOX\MyFoo.java:5: + method-call(void foo.MyFoo.main()) [code] TEST_SANDBOX\MyFoo.java:6: + main() [method] TEST_SANDBOX\MyFoo.java:9: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) <foo{MyFoo.java[MyFoo~callMain?method-call(void foo.MyFoo.main()) (advised by) {MyBar.class +(targets=1) {MyBar.class (advises) <foo{MyFoo.java[MyFoo~callMain?method-call(void foo.MyFoo.main()) +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +package=1 +FileMapSize=1 +RelationshipMapSize=2 +java source file=2 +import reference=1 +code=1 +class=1 +method=2 diff --git a/tests/model/expected/pr141730_4.txt b/tests/model/expected/pr141730_4.txt new file mode 100644 index 000000000..231bcb903 --- /dev/null +++ b/tests/model/expected/pr141730_4.txt @@ -0,0 +1,43 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + bar [package] + MyBar.aj [java source file] TEST_SANDBOX\MyBar.aj:1: + import declarations [import reference] + foo.* [import reference] TEST_SANDBOX\MyBar.aj:3: + MyBar [aspect] TEST_SANDBOX\MyBar.aj:5: + before(): <anonymous pointcut> [advice] TEST_SANDBOX\MyBar.aj:7: + declare warning: "System.out should.." [declare warning] TEST_SANDBOX\MyBar.aj:9: + declare parents: extends NewClass [declare parents] TEST_SANDBOX\MyBar.aj:11: + declare @type: *Foo* : @MyAnnotation [declare @type] TEST_SANDBOX\MyBar.aj:13: + declare @method: public * *Foo.anotMethod(..) : @MyAnnotation [declare @method] TEST_SANDBOX\MyBar.aj:14: + declare @constructor: *Foo.new(java.lang.String) : @MyAnnotation [declare @constructor] TEST_SANDBOX\MyBar.aj:15: + declare @field: int *Foo.* : @MyAnnotation [declare @field] TEST_SANDBOX\MyBar.aj:16: + MyAnnotation.java [java source file] TEST_SANDBOX\MyAnnotation.java:1: + import declarations [import reference] + MyAnnotation [annotation] TEST_SANDBOX\MyAnnotation.java:3: + NewClass.java [java source file] TEST_SANDBOX\NewClass.java:1: + import declarations [import reference] + NewClass [class] TEST_SANDBOX\NewClass.java:3: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) <bar*MyBar.aj}MyBar`declare parents!2 (declared on) {MyFoo.java +(targets=1) {MyFoo.java (annotated by) <bar*MyBar.aj}MyBar`declare @type!3 +(targets=1) {MyFoo.java (aspect declarations) <bar*MyBar.aj}MyBar`declare parents!2 +(targets=1) <bar*MyBar.aj}MyBar`declare @type!3 (annotates) {MyFoo.java +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +import reference=4 +aspect=1 +declare @method=1 +declare warning=1 +declare parents=1 +declare @type=1 +declare @constructor=1 +advice=1 +annotation=1 +class=1 +RelationshipMapSize=3 +FileMapSize=3 +package=1 +declare @field=1 +java source file=4 diff --git a/tests/model/expected/pr143924.txt b/tests/model/expected/pr143924.txt new file mode 100644 index 000000000..26f8768eb --- /dev/null +++ b/tests/model/expected/pr143924.txt @@ -0,0 +1,24 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr143924.aj [java source file] TEST_SANDBOX\pr143924.aj:1: + import declarations [import reference] + DeclareAnnotation [aspect] TEST_SANDBOX\pr143924.aj:1: + declare @method: * debit(..) : @Secured(role = "supervisor") [declare @method] TEST_SANDBOX\pr143924.aj:2: + BankAccount [class] TEST_SANDBOX\pr143924.aj:5: + debit(java.lang.String,long) [method] TEST_SANDBOX\pr143924.aj:7: + Secured [annotation] TEST_SANDBOX\pr143924.aj:11: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) *pr143924.aj}DeclareAnnotation`declare @method (annotates) *pr143924.aj[BankAccount~debit~QString;~J +(targets=1) *pr143924.aj[BankAccount~debit~QString;~J (annotated by) *pr143924.aj}DeclareAnnotation`declare @method +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=1 +import reference=1 +aspect=1 +declare @method=1 +class=1 +annotation=1 +RelationshipMapSize=2 +FileMapSize=1 +java source file=2 diff --git a/tests/model/expected/pr148027.txt b/tests/model/expected/pr148027.txt new file mode 100644 index 000000000..644b0a690 --- /dev/null +++ b/tests/model/expected/pr148027.txt @@ -0,0 +1,37 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pkg [package] + A.aj [java source file] TEST_SANDBOX\A.aj:1: + import declarations [import reference] + A [aspect] TEST_SANDBOX\A.aj:3: + before(): pointcutInClass.. [advice] TEST_SANDBOX\A.aj:5: + pointcutInAspect() [pointcut] TEST_SANDBOX\A.aj:8: + before(): pointcutInAspect.. [advice] TEST_SANDBOX\A.aj:10: + aMethod() [method] TEST_SANDBOX\A.aj:13: + C.aj [java source file] TEST_SANDBOX\C.aj:1: + import declarations [import reference] + C [class] TEST_SANDBOX\C.aj:3: + pointcutInClass() [pointcut] TEST_SANDBOX\C.aj:5: + cMethod() [method] TEST_SANDBOX\C.aj:7: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) <pkg*A.aj}A+pointcutInAspect (pointcut used by) <pkg*A.aj}A&before!2 +(targets=1) <pkg*A.aj}A&before!2 (uses pointcut) <pkg*A.aj}A+pointcutInAspect +(targets=1) <pkg*A.aj}A&before!2 (advises) <pkg*A.aj}A~aMethod +(targets=1) <pkg*C.aj[C~cMethod (advised by) <pkg*A.aj}A&before +(targets=1) *C.aj (pointcut used by) <pkg*A.aj}A&before +(targets=1) <pkg*A.aj}A~aMethod (advised by) <pkg*A.aj}A&before!2 +(targets=1) <pkg*A.aj}A&before (uses pointcut) *C.aj +(targets=1) <pkg*A.aj}A&before (advises) <pkg*C.aj[C~cMethod +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=2 +import reference=2 +aspect=1 +class=1 +advice=2 +pointcut=2 +RelationshipMapSize=6 +FileMapSize=2 +package=1 +java source file=3 diff --git a/tests/model/expected/pr77269_1.txt b/tests/model/expected/pr77269_1.txt new file mode 100644 index 000000000..204502765 --- /dev/null +++ b/tests/model/expected/pr77269_1.txt @@ -0,0 +1,30 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pack [package] + pr77269.aj [java source file] TEST_SANDBOX\pack\pr77269.aj:1: + import declarations [import reference] + Test [class] TEST_SANDBOX\pack\pr77269.aj:2: + testMethod() [method] TEST_SANDBOX\pack\pr77269.aj:4: + new Runnable() {..} [class] TEST_SANDBOX\pack\pr77269.aj:5: + run() [method] TEST_SANDBOX\pack\pr77269.aj:6: + 1$C [class] TEST_SANDBOX\pack\pr77269.aj:9: + m() [method] TEST_SANDBOX\pack\pr77269.aj:10: + A [aspect] TEST_SANDBOX\pack\pr77269.aj:17: + p() [pointcut] TEST_SANDBOX\pack\pr77269.aj:19: + before(): p.. [advice] TEST_SANDBOX\pack\pr77269.aj:21: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) <pack*pr77269.aj}A&before (advises) <pack*pr77269.aj[Test~testMethod[new Runnable() {..}~run +(targets=1) <pack*pr77269.aj[Test~testMethod[new Runnable() {..}~run (advised by) <pack*pr77269.aj}A&before +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=3 +import reference=1 +aspect=1 +class=3 +advice=1 +pointcut=1 +RelationshipMapSize=2 +FileMapSize=1 +package=1 +java source file=2 diff --git a/tests/model/expected/pr77269_2.txt b/tests/model/expected/pr77269_2.txt new file mode 100644 index 000000000..99bf61cd7 --- /dev/null +++ b/tests/model/expected/pr77269_2.txt @@ -0,0 +1,28 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pr77269b.aj [java source file] TEST_SANDBOX\pr77269b.aj:1: + import declarations [import reference] + Test [class] TEST_SANDBOX\pr77269b.aj:1: + testMethod() [method] TEST_SANDBOX\pr77269b.aj:3: + new Runnable() {..} [class] TEST_SANDBOX\pr77269b.aj:4: + run() [method] TEST_SANDBOX\pr77269b.aj:5: + 1$C [class] TEST_SANDBOX\pr77269b.aj:8: + m() [method] TEST_SANDBOX\pr77269b.aj:9: + A [aspect] TEST_SANDBOX\pr77269b.aj:16: + p() [pointcut] TEST_SANDBOX\pr77269b.aj:18: + before(): p.. [advice] TEST_SANDBOX\pr77269b.aj:20: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) *pr77269b.aj[Test~testMethod[1$C~m (advised by) *pr77269b.aj}A&before +(targets=1) *pr77269b.aj}A&before (advises) *pr77269b.aj[Test~testMethod[1$C~m +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=3 +import reference=1 +aspect=1 +class=3 +advice=1 +pointcut=1 +RelationshipMapSize=2 +FileMapSize=1 +java source file=2 diff --git a/tests/model/expected/pr77269_3.txt b/tests/model/expected/pr77269_3.txt new file mode 100644 index 000000000..02f10cfa1 --- /dev/null +++ b/tests/model/expected/pr77269_3.txt @@ -0,0 +1,29 @@ +=== MODEL STATUS REPORT ========= After a batch build +<root> [java source file] + pack [package] + pr77269c.aj [java source file] TEST_SANDBOX\pack\pr77269c.aj:1: + import declarations [import reference] + Test [class] TEST_SANDBOX\pack\pr77269c.aj:3: + testMethod() [method] TEST_SANDBOX\pack\pr77269c.aj:5: + new Runnable() {..} [class] TEST_SANDBOX\pack\pr77269c.aj:6: + run() [method] TEST_SANDBOX\pack\pr77269c.aj:7: + method-call(void pack.Test.someMethod()) [code] TEST_SANDBOX\pack\pr77269c.aj:8: + someMethod() [method] TEST_SANDBOX\pack\pr77269c.aj:13: + A [aspect] TEST_SANDBOX\pack\pr77269c.aj:17: + declare warning: "blah blah blah" [declare warning] TEST_SANDBOX\pack\pr77269c.aj:18: +=== END OF MODEL REPORT ========= +=== RELATIONSHIPS REPORT ========= After a batch build +(targets=1) <pack*pr77269c.aj}A`declare warning (matched by) <pack*pr77269c.aj[Test~testMethod[new Runnable() {..}~run?method-call(void pack.Test.someMethod()) +(targets=1) <pack*pr77269c.aj[Test~testMethod[new Runnable() {..}~run?method-call(void pack.Test.someMethod()) (matches declare) <pack*pr77269c.aj}A`declare warning +=== END OF RELATIONSHIPS REPORT == +=== Properties of the model and relationships map ===== +method=3 +import reference=1 +aspect=1 +code=1 +declare warning=1 +class=2 +RelationshipMapSize=2 +FileMapSize=1 +package=1 +java source file=2 diff --git a/tests/model/pr115607/pr115607.java b/tests/model/pr115607/pr115607.java new file mode 100644 index 000000000..3b40e4ca4 --- /dev/null +++ b/tests/model/pr115607/pr115607.java @@ -0,0 +1,7 @@ +@interface I {} + +class Simple {} + +public aspect pr115607 { + declare @type: Simple : @I; +} diff --git a/tests/model/pr120356/A.java b/tests/model/pr120356/A.java new file mode 100644 index 000000000..628205610 --- /dev/null +++ b/tests/model/pr120356/A.java @@ -0,0 +1,15 @@ + +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.DeclareWarning; +import org.aspectj.lang.annotation.DeclareError; + +@Aspect +public class A { + + @DeclareWarning("execution(* C.warningMethod())") + static final String warning = "warning"; + + @DeclareError("execution(* C.badMethod())") + static final String error = "error"; + +} diff --git a/tests/model/pr120356/C.java b/tests/model/pr120356/C.java new file mode 100644 index 000000000..91ef6ab6c --- /dev/null +++ b/tests/model/pr120356/C.java @@ -0,0 +1,11 @@ + + +public class C { + + public void warningMethod() { + } + + public void badMethod() { + } + +} diff --git a/tests/model/pr131932/pr131932.aj b/tests/model/pr131932/pr131932.aj new file mode 100644 index 000000000..648f9ed34 --- /dev/null +++ b/tests/model/pr131932/pr131932.aj @@ -0,0 +1,21 @@ +import java.util.List; + +aspect Slide74 { + + public X Bar<X>.getFirst() { + return lts.get(0); + } + + <T> Foo<T>.new(List<T> elements) { this(); } + + private List<C> Bar<C>.children;// = new ArrayList<C>(); + + static class Bar<T> { + List<T> lts; + } + +} + +class Foo<T> { + +} diff --git a/tests/model/pr132130/pr132130.aj b/tests/model/pr132130/pr132130.aj new file mode 100644 index 000000000..3259d7232 --- /dev/null +++ b/tests/model/pr132130/pr132130.aj @@ -0,0 +1,17 @@ + aspect basic { + + declare @method : * debit(..) : @Secured(role="supervisor"); + declare @constructor : BankAccount+.new(..) : @Secured(role="supervisor"); +} + +class BankAccount { + + public BankAccount(String s, int i) { + } + public void debit(long accId,long amount) { + } +} + +@interface Secured { + String role(); +} diff --git a/tests/model/pr141730_2/pr141730.aj b/tests/model/pr141730_2/pr141730.aj new file mode 100644 index 000000000..6711c97b7 --- /dev/null +++ b/tests/model/pr141730_2/pr141730.aj @@ -0,0 +1,22 @@ +import java.util.List; + +aspect A { + + pointcut p() : execution(* *.*(..)) || execution(*.new(..)); + + before() : p() { + + } + +} + +class C { + + public void genericMethod(List<String> l) {} + public void genericMethod2(MyGenericClass<String,MyClass> m) {} + +} + +class MyClass {} + +class MyGenericClass<X,Y> {} diff --git a/tests/model/pr141730_3/MyBar.aj b/tests/model/pr141730_3/MyBar.aj new file mode 100644 index 000000000..3a38885ce --- /dev/null +++ b/tests/model/pr141730_3/MyBar.aj @@ -0,0 +1,9 @@ +package bar; + +public aspect MyBar { + + before() : call(* main(..)) { + System.out.println("about to call a main method"); + } + +} diff --git a/tests/model/pr141730_3/MyFoo.java b/tests/model/pr141730_3/MyFoo.java new file mode 100644 index 000000000..d733097cf --- /dev/null +++ b/tests/model/pr141730_3/MyFoo.java @@ -0,0 +1,11 @@ +package foo; + +public class MyFoo { + + public void callMain() { + new MyFoo().main(); + } + + public void main() { + } +} diff --git a/tests/model/pr141730_3/README.txt b/tests/model/pr141730_3/README.txt new file mode 100644 index 000000000..862645f35 --- /dev/null +++ b/tests/model/pr141730_3/README.txt @@ -0,0 +1,3 @@ +To recreate the jar files: + +ajc MyBar.aj -outjar aspectpath.jar diff --git a/tests/model/pr141730_3/aspectpath.jar b/tests/model/pr141730_3/aspectpath.jar Binary files differnew file mode 100644 index 000000000..27ccd5aa7 --- /dev/null +++ b/tests/model/pr141730_3/aspectpath.jar diff --git a/tests/model/pr141730_4/MyAnnotation.java b/tests/model/pr141730_4/MyAnnotation.java new file mode 100644 index 000000000..16a690ce2 --- /dev/null +++ b/tests/model/pr141730_4/MyAnnotation.java @@ -0,0 +1,5 @@ +package bar; + +public @interface MyAnnotation { + +} diff --git a/tests/model/pr141730_4/MyBar.aj b/tests/model/pr141730_4/MyBar.aj new file mode 100644 index 000000000..50ea6efd0 --- /dev/null +++ b/tests/model/pr141730_4/MyBar.aj @@ -0,0 +1,18 @@ +package bar; + +import foo.*; + +public aspect MyBar { + + before() : call(* main(..)) {} + + declare warning: get( * System.out ) : "System.out should not be called"; + + declare parents : *Foo extends NewClass; + + declare @type : *Foo* : @MyAnnotation; + declare @method : public * *Foo.anotMethod(..) : @MyAnnotation; + declare @constructor : *Foo.new(String) : @MyAnnotation; + declare @field : int *Foo.* : @MyAnnotation ; + +} diff --git a/tests/model/pr141730_4/MyFoo.java b/tests/model/pr141730_4/MyFoo.java new file mode 100644 index 000000000..d9aba23f4 --- /dev/null +++ b/tests/model/pr141730_4/MyFoo.java @@ -0,0 +1,25 @@ +package foo; + +public class MyFoo { + + public int i; + + public MyFoo() { + super(); + } + + public MyFoo(String s) { + super(); + } + + public void callMain() { + new MyFoo().main(); + } + + public void main() { + System.out.println("blah"); + } + + public void anotMethod() { + } +} diff --git a/tests/model/pr141730_4/NewClass.java b/tests/model/pr141730_4/NewClass.java new file mode 100644 index 000000000..cdbce29e5 --- /dev/null +++ b/tests/model/pr141730_4/NewClass.java @@ -0,0 +1,5 @@ +package bar; + +public class NewClass { + +} diff --git a/tests/model/pr141730_4/README.txt b/tests/model/pr141730_4/README.txt new file mode 100644 index 000000000..7cb52fcea --- /dev/null +++ b/tests/model/pr141730_4/README.txt @@ -0,0 +1,3 @@ +To recreate the jar files: + +ajc MyFoo.java -outjar inpath.jar diff --git a/tests/model/pr141730_4/inpath.jar b/tests/model/pr141730_4/inpath.jar Binary files differnew file mode 100644 index 000000000..ba262c555 --- /dev/null +++ b/tests/model/pr141730_4/inpath.jar diff --git a/tests/model/pr143924/pr143924.aj b/tests/model/pr143924/pr143924.aj new file mode 100644 index 000000000..7ea1e8d24 --- /dev/null +++ b/tests/model/pr143924/pr143924.aj @@ -0,0 +1,13 @@ +aspect DeclareAnnotation { + declare @method : * debit(..) : @Secured(role="supervisor"); +} + +class BankAccount { + + public void debit(String accId,long amount) { + } +} + +@interface Secured { + String role(); +} diff --git a/tests/model/pr148027/A.aj b/tests/model/pr148027/A.aj new file mode 100644 index 000000000..306f14b68 --- /dev/null +++ b/tests/model/pr148027/A.aj @@ -0,0 +1,15 @@ +package pkg; + +public aspect A { + + before() : C.pointcutInClass() { + } + + pointcut pointcutInAspect() : execution(void aMethod()); + + before() : pointcutInAspect() { + } + + public void aMethod() { + } +} diff --git a/tests/model/pr148027/C.aj b/tests/model/pr148027/C.aj new file mode 100644 index 000000000..63b4e6cb6 --- /dev/null +++ b/tests/model/pr148027/C.aj @@ -0,0 +1,10 @@ +package pkg; + +public class C { + + pointcut pointcutInClass() : execution(void cMethod()); + + public void cMethod() { + + } +} diff --git a/tests/model/pr77269_1/pack/pr77269.aj b/tests/model/pr77269_1/pack/pr77269.aj new file mode 100644 index 000000000..014c1bed8 --- /dev/null +++ b/tests/model/pr77269_1/pack/pr77269.aj @@ -0,0 +1,24 @@ +package pack; +class Test { + + public void testMethod() { + new Runnable() { + public void run() { + } + }; + class C { + public void m(){ + } + } + } + +} + +aspect A { + + pointcut p() : execution(* run(..)); + + before() : p() { + } + +} diff --git a/tests/model/pr77269_2/pr77269b.aj b/tests/model/pr77269_2/pr77269b.aj new file mode 100644 index 000000000..4f95dbb2c --- /dev/null +++ b/tests/model/pr77269_2/pr77269b.aj @@ -0,0 +1,23 @@ +class Test { + + public void testMethod() { + new Runnable() { + public void run() { + } + }; + class C { + public void m(){ + } + } + } + +} + +aspect A { + + pointcut p() : execution(* m(..)); + + before() : p() { + } + +} diff --git a/tests/model/pr77269_3/pack/pr77269c.aj b/tests/model/pr77269_3/pack/pr77269c.aj new file mode 100644 index 000000000..948902347 --- /dev/null +++ b/tests/model/pr77269_3/pack/pr77269c.aj @@ -0,0 +1,19 @@ +package pack; + +class Test { + + public void testMethod() { + new Runnable() { + public void run() { + someMethod(); + } + }; + } + + public void someMethod() { + } +} + +aspect A { + declare warning : call(void someMethod(..)) : "blah blah blah"; +} |