package com.alibaba.json;
import java.util.ArrayList;
import java.util.List;
import org.junit.Assert;
import junit.framework.TestCase;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
public class ArrayRefTest2 extends TestCase {
public void test_0() throws Exception {
String text;
{
List<Group> groups = new ArrayList<Group>();
Group g0 = new Group(0);
Group g1 = new Group(1);
Group g2 = new Group(2);
groups.add(g0);
groups.add(g1);
groups.add(g2);
groups.add(g0);
groups.add(g1);
groups.add(g2);
text = JSON.toJSONString(groups);
}
System.out.println(text);
Group[] groups = JSON.parseObject(text, new TypeReference<Group[]>() {});
Assert.assertEquals(6, groups.length);
Assert.assertNotNull(groups[0]);
Assert.assertNotNull(groups[1]);
Assert.assertNotNull(groups[2]);
Assert.assertNotNull(groups[3]);
Assert.assertNotNull(groups[4]);
Assert.assertNotNull(groups[5]);
Assert.assertEquals(0, groups[0].getId());
Assert.assertEquals(1, groups[1].getId());
Assert.assertEquals(2, groups[2].getId());
Assert.assertEquals(0, groups[3].getId());
Assert.assertEquals(1, groups[4].getId());
Assert.assertEquals(2, groups[5].getId());
}
public static class Group {
private int id;
public Group(){
}
public Group(int id){
this.id = id;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String toString() {
return "{id:" + id + "}";
}
}
}