1 16 package org.apache.commons.lang.builder; 17 18 import java.util.ArrayList ; 19 import java.util.HashMap ; 20 21 import junit.framework.Test; 22 import junit.framework.TestCase; 23 import junit.framework.TestSuite; 24 import junit.textui.TestRunner; 25 26 32 public class StandardToStringStyleTest extends TestCase { 33 34 private final Integer base = new Integer (5); 35 private final String baseStr = "Integer"; 36 37 private static final StandardToStringStyle STYLE = new StandardToStringStyle(); 38 39 static { 40 STYLE.setUseShortClassName(true); 41 STYLE.setUseIdentityHashCode(false); 42 STYLE.setArrayStart("["); 43 STYLE.setArraySeparator(", "); 44 STYLE.setArrayEnd("]"); 45 STYLE.setNullText("%NULL%"); 46 STYLE.setSizeStartText("%SIZE="); 47 STYLE.setSizeEndText("%"); 48 STYLE.setSummaryObjectStartText("%"); 49 STYLE.setSummaryObjectEndText("%"); 50 } 51 52 public StandardToStringStyleTest(String name) { 53 super(name); 54 } 55 56 public static void main(String [] args) { 57 TestRunner.run(suite()); 58 } 59 60 public static Test suite() { 61 TestSuite suite = new TestSuite(StandardToStringStyleTest.class); 62 suite.setName("StandardToStringStyle Tests"); 63 return suite; 64 } 65 66 protected void setUp() throws Exception { 67 super.setUp(); 68 ToStringBuilder.setDefaultStyle(STYLE); 69 } 70 71 protected void tearDown() throws Exception { 72 super.tearDown(); 73 ToStringBuilder.setDefaultStyle(STYLE); 74 } 75 76 78 public void testBlank() { 79 assertEquals(baseStr + "[]", new ToStringBuilder(base).toString()); 80 } 81 82 public void testAppendSuper() { 83 assertEquals(baseStr + "[]", new ToStringBuilder(base).appendSuper("Integer@8888[]").toString()); 84 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).appendSuper("Integer@8888[%NULL%]").toString()); 85 86 assertEquals(baseStr + "[a=hello]", new ToStringBuilder(base).appendSuper("Integer@8888[]").append("a", "hello").toString()); 87 assertEquals(baseStr + "[%NULL%,a=hello]", new ToStringBuilder(base).appendSuper("Integer@8888[%NULL%]").append("a", "hello").toString()); 88 assertEquals(baseStr + "[a=hello]", new ToStringBuilder(base).appendSuper(null).append("a", "hello").toString()); 89 } 90 91 public void testObject() { 92 Integer i3 = new Integer (3); 93 Integer i4 = new Integer (4); 94 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append((Object ) null).toString()); 95 assertEquals(baseStr + "[3]", new ToStringBuilder(base).append(i3).toString()); 96 assertEquals(baseStr + "[a=%NULL%]", new ToStringBuilder(base).append("a", (Object ) null).toString()); 97 assertEquals(baseStr + "[a=3]", new ToStringBuilder(base).append("a", i3).toString()); 98 assertEquals(baseStr + "[a=3,b=4]", new ToStringBuilder(base).append("a", i3).append("b", i4).toString()); 99 assertEquals(baseStr + "[a=%Integer%]", new ToStringBuilder(base).append("a", i3, false).toString()); 100 assertEquals(baseStr + "[a=%SIZE=0%]", new ToStringBuilder(base).append("a", new ArrayList (), false).toString()); 101 assertEquals(baseStr + "[a=[]]", new ToStringBuilder(base).append("a", new ArrayList (), true).toString()); 102 assertEquals(baseStr + "[a=%SIZE=0%]", new ToStringBuilder(base).append("a", new HashMap (), false).toString()); 103 assertEquals(baseStr + "[a={}]", new ToStringBuilder(base).append("a", new HashMap (), true).toString()); 104 assertEquals(baseStr + "[a=%SIZE=0%]", new ToStringBuilder(base).append("a", (Object ) new String [0], false).toString()); 105 assertEquals(baseStr + "[a=[]]", new ToStringBuilder(base).append("a", (Object ) new String [0], true).toString()); 106 } 107 108 public void testLong() { 109 assertEquals(baseStr + "[3]", new ToStringBuilder(base).append(3L).toString()); 110 assertEquals(baseStr + "[a=3]", new ToStringBuilder(base).append("a", 3L).toString()); 111 assertEquals(baseStr + "[a=3,b=4]", new ToStringBuilder(base).append("a", 3L).append("b", 4L).toString()); 112 } 113 114 public void testObjectArray() { 115 Object [] array = new Object [] {null, base, new int[] {3, 6}}; 116 assertEquals(baseStr + "[[%NULL%, 5, [3, 6]]]", new ToStringBuilder(base).append(array).toString()); 117 assertEquals(baseStr + "[[%NULL%, 5, [3, 6]]]", new ToStringBuilder(base).append((Object ) array).toString()); 118 array = null; 119 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append(array).toString()); 120 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append((Object ) array).toString()); 121 } 122 123 public void testLongArray() { 124 long[] array = new long[] {1, 2, -3, 4}; 125 assertEquals(baseStr + "[[1, 2, -3, 4]]", new ToStringBuilder(base).append(array).toString()); 126 assertEquals(baseStr + "[[1, 2, -3, 4]]", new ToStringBuilder(base).append((Object ) array).toString()); 127 array = null; 128 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append(array).toString()); 129 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append((Object ) array).toString()); 130 } 131 132 public void testLongArrayArray() { 133 long[][] array = new long[][] {{1, 2}, null, {5}}; 134 assertEquals(baseStr + "[[[1, 2], %NULL%, [5]]]", new ToStringBuilder(base).append(array).toString()); 135 assertEquals(baseStr + "[[[1, 2], %NULL%, [5]]]", new ToStringBuilder(base).append((Object ) array).toString()); 136 array = null; 137 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append(array).toString()); 138 assertEquals(baseStr + "[%NULL%]", new ToStringBuilder(base).append((Object ) array).toString()); 139 } 140 141 } 142 | Popular Tags |