1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.springframework.binding.support;
17
18 import java.util.HashMap;
19 import java.util.List;
20 import java.util.Map;
21
22 import org.springframework.binding.PropertyMetadataAccessStrategy;
23
24
25
26
27 public class ObjectPropertyAccessStrategyTests extends AbstractPropertyAccessStrategyTests {
28
29 protected AbstractPropertyAccessStrategy createPropertyAccessStrategy(Object target) {
30 return new ObjectPropertyAccessStrategy(target);
31 }
32
33
34
35
36 public void testMetaData() {
37 PropertyMetadataAccessStrategy mas = pas.getMetadataAccessStrategy();
38
39 assertPropertyMetadata(mas, "simpleProperty", String.class, true, true);
40 assertPropertyMetadata(mas, "mapProperty", Map.class, true, true);
41 assertPropertyMetadata(mas, "listProperty", List.class, true, true);
42 assertPropertyMetadata(mas, "readOnly", Object.class, true, false);
43 assertPropertyMetadata(mas, "writeOnly", Object.class, false, true);
44
45
46 assertPropertyMetadata(mas, "nestedProperty.simpleProperty", String.class, true, true);
47
48
49 final Map map = new HashMap();
50 testBean.setMapProperty(map);
51 map.put("key", new Integer(1));
52 assertPropertyMetadata(mas, "mapProperty[key]", Object.class, true, true);
53 }
54 }