1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.plugin;
17
18 import static org.junit.jupiter.api.Assertions.*;
19
20 import java.util.HashMap;
21 import java.util.Map;
22
23 import org.junit.jupiter.api.Test;
24
25 class PluginTest {
26
27 @Test
28 void mapPluginShouldInterceptGet() {
29 Map map = new HashMap();
30 map = (Map) new AlwaysMapPlugin().plugin(map);
31 assertEquals("Always", map.get("Anything"));
32 }
33
34 @Test
35 void shouldNotInterceptToString() {
36 Map map = new HashMap();
37 map = (Map) new AlwaysMapPlugin().plugin(map);
38 assertNotEquals("Always", map.toString());
39 }
40
41 @Intercepts({
42 @Signature(type = Map.class, method = "get", args = {Object.class})})
43 public static class AlwaysMapPlugin implements Interceptor {
44 @Override
45 public Object intercept(Invocation invocation) {
46 return "Always";
47 }
48
49 }
50
51 }