1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package ch.elca.el4j.tests.aspects;
18
19 import static junit.framework.Assert.assertEquals;
20
21 import java.util.List;
22
23 import org.junit.Test;
24 import org.springframework.test.context.ContextConfiguration;
25
26 import ch.elca.el4j.tests.aspects.interceptor.ObservedTransactionInterceptor;
27 import ch.elca.el4j.tests.aspects.interceptor.ServiceLoggerInterceptor;
28 import ch.elca.el4j.tests.aspects.util.InvocationMonitor;
29 import ch.elca.el4j.tests.core.ModuleTestContextLoader;
30
31
32
33
34
35
36
37
38 @ContextConfiguration(
39 locations = {
40 "classpath*:optional/interception/transactionJava5Annotations.xml",
41 "classpath*:optional/interception/transactionJava5AnnotationsForAspectTests.xml" },
42 loader = ModuleTestContextLoader.class)
43 public class InvokationWithTrJ5ATest extends AbstractInvokationTests {
44
45
46
47 @Test
48 public void testDoubleInvokation() {
49 InvocationMonitor.clear();
50 InvocationMonitor.initCounter(ObservedTransactionInterceptor.class);
51 commonDoubleInvokationTest();
52 assertEquals("Transaction interceptor called not exactly once!",
53 1, InvocationMonitor.getCounter(ObservedTransactionInterceptor.class));
54
55
56 List<Class<?>> invocationList = InvocationMonitor.getInvocationList();
57 assertEquals(2, invocationList.size());
58 assertEquals(ObservedTransactionInterceptor.class, invocationList.get(0));
59 assertEquals(ServiceLoggerInterceptor.class, invocationList.get(1));
60 }
61 }