1
2
3
4
5
6
7 package org.mule.config.spring.parsers.assembly;
8
9 import org.mule.config.spring.parsers.assembly.configuration.PrefixValueMap;
10 import org.mule.config.spring.parsers.assembly.configuration.PropertyConfiguration;
11 import org.mule.tck.junit4.AbstractMuleTestCase;
12
13 import java.util.HashMap;
14 import java.util.Map;
15
16 import static org.junit.Assert.assertEquals;
17
18 public abstract class AbstractBasePropertyConfigurationTestCase extends AbstractMuleTestCase
19 {
20
21 public static final String ALIAS = "Alias";
22 public static final String NAME = "Name";
23 public static final String COLLECTION = "Collection";
24 public static final String IGNORED = "Ignored";
25 public static final String NOT_IGNORED = "Not Ignored";
26 public static final String MAP_CAPS = "MapCaps";
27 public static final String MAP_DIGITS = "MapNumbers";
28 public static final String MAP_PREFIX = "MapPrefix";
29 public static final String REFERENCE = "Reference";
30 public static final String UNUSED = "Unused";
31
32 public static final String TO_DIGITS = "one=1,two=2,three=3";
33 public static final Map TO_CAPS;
34 public static final String PREFIX = "prefix";
35
36 static {
37 TO_CAPS = new HashMap();
38 String alphabet = "abcdefghijklmnopqrstuvwxyz";
39 for (int i = 0; i < alphabet.length(); i++)
40 {
41 String letter = alphabet.substring(i, i+1);
42 TO_CAPS.put(letter.toLowerCase(), letter.toUpperCase());
43 }
44 }
45
46 protected void setTestValues(String prefix, PropertyConfiguration config)
47 {
48 config.addAlias(prefix + ALIAS, prefix + NAME);
49 config.addCollection(prefix + COLLECTION);
50 config.addIgnored(prefix + IGNORED);
51 config.removeIgnored(prefix + NOT_IGNORED);
52 config.addMapping(prefix + MAP_CAPS, TO_CAPS);
53 config.addMapping(prefix + MAP_DIGITS, TO_DIGITS);
54 config.addMapping(prefix + MAP_PREFIX, new PrefixValueMap(PREFIX));
55 config.addReference(prefix + REFERENCE);
56 }
57
58 protected void verifyTestValues(String prefix, PropertyConfiguration config)
59 {
60 assertEquals(prefix + NAME, config.getAttributeMapping(prefix + ALIAS));
61 assertEquals(prefix + NAME, config.translateName(prefix + ALIAS));
62 assertEquals(prefix + UNUSED, config.getAttributeMapping(prefix + UNUSED));
63 assertEquals(true, config.isCollection(prefix + COLLECTION));
64 assertEquals(false, config.isCollection(prefix + UNUSED));
65 assertEquals(true, config.isIgnored(prefix + IGNORED));
66 assertEquals(false, config.isIgnored(prefix + UNUSED));
67 assertEquals(false, config.isIgnored(prefix + NOT_IGNORED));
68 assertEquals("A", config.translateValue(prefix + MAP_CAPS, "a"));
69 assertEquals("a", config.translateValue(prefix + UNUSED, "a"));
70 assertEquals("Z", config.translateValue(prefix + MAP_CAPS, "z"));
71 assertEquals("z", config.translateValue(prefix + UNUSED, "z"));
72 assertEquals("1", config.translateValue(prefix + MAP_CAPS, "1"));
73 assertEquals("1", config.translateValue(prefix + MAP_DIGITS, "one"));
74 assertEquals("2", config.translateValue(prefix + MAP_DIGITS, "two"));
75 assertEquals("3", config.translateValue(prefix + MAP_DIGITS, "three"));
76 assertEquals("four", config.translateValue(prefix + MAP_DIGITS, "four"));
77 assertEquals("one", config.translateValue(prefix + UNUSED, "one"));
78 assertEquals(PREFIX + "foo", config.translateValue(prefix + MAP_PREFIX, "foo"));
79 }
80
81 protected void verifyIgnored(String prefix, PropertyConfiguration config)
82 {
83 config.setIgnoredDefault(false);
84 assertEquals(true, config.isIgnored(prefix + IGNORED));
85 assertEquals(false, config.isIgnored(prefix + UNUSED));
86 assertEquals(false, config.isIgnored(prefix + NOT_IGNORED));
87 config.setIgnoredDefault(true);
88 assertEquals(true, config.isIgnored(prefix + IGNORED));
89 assertEquals(true, config.isIgnored(prefix + UNUSED));
90 assertEquals(false, config.isIgnored(prefix + NOT_IGNORED));
91 config.setIgnoredDefault(false);
92 config.removeIgnored(prefix + IGNORED);
93 assertEquals(false, config.isIgnored(prefix + IGNORED));
94 config.addIgnored(prefix + IGNORED);
95 }
96
97 protected void verifyMissing(String prefix, PropertyConfiguration config)
98 {
99 assertEquals(prefix + ALIAS, config.getAttributeMapping(prefix + ALIAS));
100 assertEquals(prefix + ALIAS, config.translateName(prefix + ALIAS));
101 assertEquals(prefix + UNUSED, config.getAttributeMapping(prefix + UNUSED));
102 assertEquals(false, config.isCollection(prefix + COLLECTION));
103 assertEquals(false, config.isCollection(prefix + UNUSED));
104 assertEquals(false, config.isIgnored(prefix + IGNORED));
105 assertEquals(false, config.isIgnored(prefix + UNUSED));
106 assertEquals("a", config.translateValue(prefix + MAP_CAPS, "a"));
107 assertEquals("a", config.translateValue(prefix + UNUSED, "a"));
108 assertEquals("z", config.translateValue(prefix + MAP_CAPS, "z"));
109 assertEquals("z", config.translateValue(prefix + UNUSED, "z"));
110 assertEquals("1", config.translateValue(prefix + MAP_CAPS, "1"));
111 assertEquals("one", config.translateValue(prefix + MAP_DIGITS, "one"));
112 assertEquals("two", config.translateValue(prefix + MAP_DIGITS, "two"));
113 assertEquals("three", config.translateValue(prefix + MAP_DIGITS, "three"));
114 assertEquals("four", config.translateValue(prefix + MAP_DIGITS, "four"));
115 assertEquals("one", config.translateValue(prefix + UNUSED, "one"));
116 assertEquals("foo", config.translateValue(prefix + MAP_PREFIX, "foo"));
117 }
118
119 }