View Javadoc

1   /*
2    * $Id: ObjectUtilsTestCase.java 20321 2010-11-24 15:21:24Z dfeist $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.util;
12  
13  import org.mule.tck.AbstractMuleTestCase;
14  
15  import java.util.HashMap;
16  
17  public class ObjectUtilsTestCase extends AbstractMuleTestCase
18  {
19  
20      public void testIdentityToShortString()
21      {
22          assertEquals("null", ObjectUtils.identityToShortString(null));
23  
24          String source = "foo";
25          String description = ObjectUtils.identityToShortString(source);
26          String[] components = StringUtils.split(description, '@');
27  
28          assertNotNull(components);
29          assertEquals(2, components.length);
30          assertEquals("String", components[0]);
31          assertEquals(Integer.toHexString(System.identityHashCode(source)), components[1]);
32      }
33  
34      public void testBooleanConversion() throws Exception
35      {
36          Object value = "true";
37          assertTrue(ObjectUtils.getBoolean(value, false));
38  
39          value = "xyz";
40          assertFalse(ObjectUtils.getBoolean(value, false));
41  
42          value = new Integer(6);
43          assertTrue(ObjectUtils.getBoolean(value, false));
44  
45          value = new Integer(1);
46          assertTrue(ObjectUtils.getBoolean(value, false));
47  
48          value = new Integer(0);
49          assertFalse(ObjectUtils.getBoolean(value, false));
50  
51          value = new Integer(-41);
52          assertFalse(ObjectUtils.getBoolean(value, false));
53  
54          value = null;
55          assertFalse(ObjectUtils.getBoolean(value, false));
56      }
57  
58      public void testShortConversion() throws Exception
59      {
60          Object value = "123";
61          assertEquals((short) 123, ObjectUtils.getShort(value, (short) -1));
62  
63          value = "xyz";
64          assertEquals((short) -1, ObjectUtils.getShort(value, (short) -1));
65  
66          value = new Integer(6);
67          assertEquals((short) 6, ObjectUtils.getShort(value, (short) -1));
68  
69          value = new Double(63.4);
70          assertEquals((short) 63, ObjectUtils.getShort(value, (short) -1));
71  
72          value = new Float(-163.2);
73          assertEquals((short) -163, ObjectUtils.getShort(value, (short) -1));
74  
75          value = null;
76          assertEquals((short) -1, ObjectUtils.getShort(value, (short) -1));
77  
78      }
79  
80      public void testByteConversion() throws Exception
81      {
82          Object value = "123";
83          assertEquals((byte) 123, ObjectUtils.getByte(value, (byte) -1));
84  
85          value = "xyz";
86          assertEquals((byte) -1, ObjectUtils.getByte(value, (byte) -1));
87  
88          value = new Integer(6);
89          assertEquals((byte) 6, ObjectUtils.getByte(value, (byte) -1));
90  
91          value = new Double(63.4);
92          assertEquals((byte) 63, ObjectUtils.getByte(value, (byte) -1));
93  
94          value = new Float(-163.2);
95          assertEquals((byte) -163, ObjectUtils.getByte(value, (byte) -1));
96  
97          value = null;
98          assertEquals((byte) -1, ObjectUtils.getByte(value, (byte) -1));
99      }
100 
101     public void testIntConversion() throws Exception
102     {
103         Object value = "123";
104         assertEquals(123, ObjectUtils.getInt(value, -1));
105 
106         value = "xyz";
107         assertEquals(-1, ObjectUtils.getInt(value, -1));
108 
109         value = new Integer(6);
110         assertEquals(6, ObjectUtils.getInt(value, -1));
111 
112         value = new Double(63.4);
113         assertEquals(63, ObjectUtils.getInt(value, -1));
114 
115         value = new Float(-163.2);
116         assertEquals(-163, ObjectUtils.getInt(value, -1));
117 
118         value = null;
119         assertEquals(-1, ObjectUtils.getInt(value, -1));
120     }
121 
122     public void testLongConversion() throws Exception
123     {
124         Object value = "123";
125         assertEquals(123, ObjectUtils.getLong(value, -1));
126 
127         value = "xyz";
128         assertEquals(-1, ObjectUtils.getLong(value, -1));
129 
130         value = new Integer(6);
131         assertEquals(6, ObjectUtils.getLong(value, -1));
132 
133         value = new Double(63.4);
134         assertEquals(63, ObjectUtils.getLong(value, -1));
135 
136         value = new Float(-163.2);
137         assertEquals(-163, ObjectUtils.getLong(value, -1));
138 
139         value = null;
140         assertEquals(-1, ObjectUtils.getLong(value, -1));
141     }
142 
143     public void testFloatConversion() throws Exception
144     {
145         Object value = "123.34";
146         assertEquals(123.34, ObjectUtils.getFloat(value, -1), 0.1f);
147 
148         value = "xyz";
149         assertEquals(-1, ObjectUtils.getFloat(value, -1), 0.1f);
150 
151         value = new Integer(6);
152         assertEquals(6, ObjectUtils.getFloat(value, -1), 0.1f);
153 
154         value = new Double(63.4);
155         assertEquals(63.4, ObjectUtils.getFloat(value, -1), 0.1f);
156 
157         value = new Float(-163.2);
158         assertEquals(-163.2, ObjectUtils.getFloat(value, -1), 0.1f);
159 
160         value = null;
161         assertEquals(-1, ObjectUtils.getFloat(value, -1), 0.1f);
162     }
163 
164     public void testDoubleConversion() throws Exception
165     {
166         Object value = "123.34";
167         assertEquals(123.34, ObjectUtils.getDouble(value, -1), 0.1d);
168 
169         value = "xyz";
170         assertEquals(-1, ObjectUtils.getDouble(value, -1), 0.1d);
171 
172         value = new Integer(6);
173         assertEquals(6, ObjectUtils.getDouble(value, -1), 0.1d);
174 
175         value = new Double(63.4);
176         assertEquals(63.4, ObjectUtils.getDouble(value, -1), 0.1d);
177 
178         value = new Float(-163.2);
179         assertEquals(-163.2, ObjectUtils.getDouble(value, -1), 0.1d);
180 
181         value = null;
182         assertEquals(-1, ObjectUtils.getDouble(value, -1), 0.1d);
183     }
184 
185     public void testStringConversion() throws Exception
186     {
187         Object value = "hello";
188         assertEquals("hello", ObjectUtils.getString(value, "x"));
189 
190         value = new HashMap();
191         assertEquals(new HashMap().toString(), ObjectUtils.getString(value, "x"));
192 
193         value = null;
194         assertEquals("x", ObjectUtils.getString(value, "x"));
195     }
196 }