package com.alibaba.json.bvt.parser.array;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
import org.junit.Assert;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.parser.Feature;
import junit.framework.TestCase;
public class BeanToArrayTest_date extends TestCase {
protected void setUp() throws Exception {
JSON.defaultTimeZone = TimeZone.getTimeZone("Asia/Shanghai");
JSON.defaultLocale = Locale.CHINA;
}
public void test_date() throws Exception {
long time = System.currentTimeMillis();
Model model = JSON.parseObject("[" + time + "," + time + "]", Model.class, Feature.SupportArrayToBean);
Assert.assertEquals(time, model.v1.getTime());
Assert.assertEquals(time, model.v2.getTime());
}
public void test_date_null() throws Exception {
Model model = JSON.parseObject("[null,null]", Model.class, Feature.SupportArrayToBean);
Assert.assertNull(model.v1);
Assert.assertNull(model.v2);
}
public void test_date2() throws Exception {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", JSON.defaultLocale);
dateFormat.setTimeZone(JSON.defaultTimeZone);
Model model = JSON.parseObject("[\"2016-01-01\",\"2016-01-02\"]", Model.class, Feature.SupportArrayToBean);
Assert.assertEquals(dateFormat.parse("2016-01-01").getTime(), model.v1.getTime());
Assert.assertEquals(dateFormat.parse("2016-01-02").getTime(), model.v2.getTime());
}
public static class Model {
public Date v1;
public Date v2;
}
}