/src/test/java/com/alibaba/json/bvt/parser/array/BeanToArrayTest.java

https://github.com/alibaba/fastjson · Java · 73 lines · 59 code · 14 blank · 0 comment · 0 complexity · fd7c4d77b98122d2bc3659d0784ad198 MD5 · raw file

  1. package com.alibaba.json.bvt.parser.array;
  2. import java.util.ArrayList;
  3. import java.util.Date;
  4. import java.util.List;
  5. import org.junit.Assert;
  6. import com.alibaba.fastjson.JSON;
  7. import com.alibaba.fastjson.annotation.JSONType;
  8. import com.alibaba.fastjson.parser.Feature;
  9. import com.alibaba.fastjson.serializer.SerializerFeature;
  10. import junit.framework.TestCase;
  11. public class BeanToArrayTest extends TestCase {
  12. public void test_beanToArray_parse() throws Exception {
  13. String text = "{\"go\":[[\"0\",[true,false],9999999999999,99,\"012345678901234567890123\",\"ftp://gfw.yma.co/x160\",\"xxxx\",\"9876543210123456\",[[\"m\",\"不要开心\",\"http://gfw.meiya.co\",\"123456@gg.com\",\"麻麻\",\"add\",null,\"9876543210123456\"]],null,[\"add\",\"ww\"],999,1234567890123]],\"success\":true}";
  14. GR result = JSON.parseObject(text, GR.class);
  15. Assert.assertNotNull(result);
  16. Assert.assertEquals(1, result.go.size());
  17. Assert.assertEquals("0", result.go.get(0).bi);
  18. Assert.assertEquals(true, result.go.get(0).co.qu);
  19. Assert.assertEquals(false, result.go.get(0).co.sa);
  20. Assert.assertEquals(9999999999999L, result.go.get(0).gm.getTime());
  21. Assert.assertEquals(99, result.go.get(0).grCo);
  22. }
  23. public static class GR {
  24. public List<GO> go;
  25. public boolean success;
  26. }
  27. @JSONType(parseFeatures = Feature.SupportArrayToBean, serialzeFeatures=SerializerFeature.BeanToArray)
  28. public static class GO {
  29. public String bi;
  30. public CO co;
  31. public Date gm;
  32. public int grCo;
  33. public String grId;
  34. public String grNa;
  35. public String grIm;
  36. public String ma;
  37. public List<MO> me = new ArrayList<MO>();
  38. public int th = 500;
  39. public List<String> pe = new ArrayList<String>();
  40. public String no;
  41. public long ve;
  42. }
  43. @JSONType(parseFeatures = Feature.SupportArrayToBean)
  44. public static class MO {
  45. public String ope;
  46. public String use;
  47. public String log;
  48. public String rea;
  49. public String gro;
  50. public String gen;
  51. public String hea;
  52. public String nic;
  53. }
  54. @JSONType(parseFeatures = Feature.SupportArrayToBean)
  55. public static class CO {
  56. public boolean sa;
  57. public boolean qu;
  58. }
  59. }