package com.alibaba.json.bvt.date;
import java.io.StringReader;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
import org.junit.Assert;
import com.alibaba.fastjson.JSONReader;
import junit.framework.TestCase;
public class DateTest_tz extends TestCase {
// protected void setUp() throws Exception {
// JSON.defaultTimeZone = TimeZone.getTimeZone("Asia/Shanghai");
// JSON.defaultLocale = Locale.CHINA;
// }
public void test_codec() throws Exception {
JSONReader reader = new JSONReader(new StringReader("{\"value\":\"2016-04-29\"}"));
reader.setLocale(Locale.CHINA);
reader.setTimzeZone(TimeZone.getTimeZone("Asia/Shanghai"));
Model model = reader.readObject(Model.class);
Assert.assertNotNull(model.value);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);
format.setTimeZone(TimeZone.getTimeZone("Asia/Shanghai"));
Date date = format.parse("2016-04-29");
Assert.assertEquals(date.getTime(), model.value.getTime());
Assert.assertEquals(TimeZone.getTimeZone("Asia/Shanghai"), reader.getTimzeZone());
Assert.assertEquals(Locale.CHINA, reader.getLocal());
reader.close();
}
public static class Model {
public Date value;
}
}