001: /*
002: * $Id: org.eclipse.jdt.ui.prefs 5004 2006-03-17 20:47:08 -0800 (Fri, 17 Mar 2006) eelco12 $
003: * $Revision: 5004 $
004: * $Date: 2006-03-17 20:47:08 -0800 (Fri, 17 Mar 2006) $
005: *
006: * ==============================================================================
007: * Licensed under the Apache License, Version 2.0 (the "License"); you may not
008: * use this file except in compliance with the License. You may obtain a copy of
009: * the License at
010: *
011: * http://www.apache.org/licenses/LICENSE-2.0
012: *
013: * Unless required by applicable law or agreed to in writing, software
014: * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
015: * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
016: * License for the specific language governing permissions and limitations under
017: * the License.
018: */
019: package wicket.util.value;
020:
021: import junit.framework.TestCase;
022:
023: /**
024: * @author jcompagner
025: */
026: public class ValueMapTest extends TestCase {
027: /**
028: * @throws Exception
029: */
030: public void testStringParseConstructorSimple() throws Exception {
031: ValueMap vm = new ValueMap("param=value");
032: assertEquals(1, vm.size());
033: assertEquals("value", vm.get("param"));
034:
035: vm = new ValueMap("param1=value1,param2=value2");
036: assertEquals(2, vm.size());
037: assertEquals("value1", vm.get("param1"));
038: assertEquals("value2", vm.get("param2"));
039:
040: vm = new ValueMap("param1=value1;param2=value2", ";");
041: assertEquals(2, vm.size());
042: assertEquals("value1", vm.get("param1"));
043: assertEquals("value2", vm.get("param2"));
044: }
045:
046: /**
047: * @throws Exception
048: */
049: public void testStringParseConstructorSpecialChars()
050: throws Exception {
051: ValueMap vm = new ValueMap("param1=val>ue1;param2=value2", ";");
052: assertEquals(2, vm.size());
053: assertEquals("val>ue1", vm.get("param1"));
054: assertEquals("value2", vm.get("param2"));
055:
056: vm = new ValueMap("param1=val:ue1;param2=value2", ";");
057: assertEquals(2, vm.size());
058: assertEquals("val:ue1", vm.get("param1"));
059: assertEquals("value2", vm.get("param2"));
060:
061: vm = new ValueMap("param1=val?ue1;param2=val<>ue2", ";");
062: assertEquals(2, vm.size());
063: assertEquals("val?ue1", vm.get("param1"));
064: assertEquals("val<>ue2", vm.get("param2"));
065:
066: }
067:
068: /**
069: * @throws Exception
070: */
071: public void testStringParseConstructorDelimitersAndEqualsSign()
072: throws Exception {
073: ValueMap vm = new ValueMap("param1=val=ue1;param2=value2", ";");
074: assertEquals(2, vm.size());
075: assertEquals("val=ue1", vm.get("param1"));
076: assertEquals("value2", vm.get("param2"));
077:
078: vm = new ValueMap("param1=value1;param2=val=ue2", ";");
079: assertEquals(2, vm.size());
080: assertEquals("value1", vm.get("param1"));
081: assertEquals("val=ue2", vm.get("param2"));
082:
083: vm = new ValueMap("param1=val;ue1;param2=value2", ";");
084: assertEquals(2, vm.size());
085: assertEquals("val;ue1", vm.get("param1"));
086: assertEquals("value2", vm.get("param2"));
087:
088: vm = new ValueMap("param1=value1;param2=val;ue2", ";");
089: assertEquals(2, vm.size());
090: assertEquals("value1", vm.get("param1"));
091: assertEquals("val;ue2", vm.get("param2"));
092:
093: vm = new ValueMap(
094: "param1=va=l;ue1;param2=val;ue2;param3=val=ue3", ";");
095: assertEquals(3, vm.size());
096: assertEquals("va=l;ue1", vm.get("param1"));
097: assertEquals("val;ue2", vm.get("param2"));
098: assertEquals("val=ue3", vm.get("param3"));
099:
100: }
101: }
|