package com.alibaba.json.bvt; import org.junit.Assert; import junit.framework.TestCase; import com.alibaba.fastjson.JSON; public class StringDeserializerTest extends TestCase { public void test_0() throws Exception { Assert.assertEquals("123", JSON.parseObject("123", String.class)); Assert.assertEquals("true", JSON.parseObject("true", String.class)); Assert.assertEquals(null, JSON.parseObject("null", String.class)); } public void test_StringBuffer() throws Exception { Assert.assertTrue(equals(new StringBuffer("123"), JSON.parseObject("123", StringBuffer.class))); Assert.assertTrue(equals(new StringBuffer("true"), JSON.parseObject("true", StringBuffer.class))); Assert.assertEquals(null, JSON.parseObject("null", StringBuffer.class)); } public void test_StringBuilder() throws Exception { Assert.assertTrue(equals(new StringBuilder("123"), JSON.parseObject("123", StringBuilder.class))); Assert.assertTrue(equals(new StringBuilder("true"), JSON.parseObject("true", StringBuilder.class))); Assert.assertEquals(null, JSON.parseObject("null", StringBuilder.class)); } private boolean equals(StringBuffer sb1, StringBuffer sb2) { if (sb1 == null && sb2 == null) { return true; } if ((sb1 == null && sb2 != null) || (sb1 != null && sb2 == null)) { return false; } return sb1.toString().equals(sb2.toString()); } private boolean equals(StringBuilder sb1, StringBuilder sb2) { if (sb1 == null && sb2 == null) { return true; } if ((sb1 == null && sb2 != null) || (sb1 != null && sb2 == null)) { return false; } return sb1.toString().equals(sb2.toString()); } }