Test attempting (and failing) to reproduce issue 215.
This commit is contained in:
parent
7a7bbf754c
commit
eb7b1e4ac7
|
@ -30,6 +30,7 @@ import com.google.gson.common.TestTypes.ClassWithTransientFields;
|
||||||
import com.google.gson.common.TestTypes.Nested;
|
import com.google.gson.common.TestTypes.Nested;
|
||||||
import com.google.gson.common.TestTypes.PrimitiveArray;
|
import com.google.gson.common.TestTypes.PrimitiveArray;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import junit.framework.TestCase;
|
import junit.framework.TestCase;
|
||||||
|
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
|
@ -409,4 +410,36 @@ public class ObjectTest extends TestCase {
|
||||||
String json = gson.toJson(obj);
|
String json = gson.toJson(obj);
|
||||||
assertEquals("{}", json);
|
assertEquals("{}", json);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test for issue 215.
|
||||||
|
*/
|
||||||
|
public void testSingletonLists() {
|
||||||
|
Gson gson = new Gson();
|
||||||
|
Product product = new Product();
|
||||||
|
assertEquals("{\"attributes\":[],\"departments\":[]}",
|
||||||
|
gson.toJson(product));
|
||||||
|
gson.fromJson(gson.toJson(product), Product.class);
|
||||||
|
|
||||||
|
product.departments.add(new Department());
|
||||||
|
assertEquals("{\"attributes\":[],\"departments\":[{\"name\":\"abc\",\"code\":\"123\"}]}",
|
||||||
|
gson.toJson(product));
|
||||||
|
gson.fromJson(gson.toJson(product), Product.class);
|
||||||
|
|
||||||
|
product.attributes.add("456");
|
||||||
|
assertEquals("{\"attributes\":[\"456\"],\"departments\":[{\"name\":\"abc\",\"code\":\"123\"}]}",
|
||||||
|
gson.toJson(product));
|
||||||
|
gson.fromJson(gson.toJson(product), Product.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
static final class Department {
|
||||||
|
public String name = "abc";
|
||||||
|
public String code = "123";
|
||||||
|
}
|
||||||
|
|
||||||
|
static final class Product {
|
||||||
|
private List<String> attributes = new ArrayList<String>();
|
||||||
|
private List<Department> departments = new ArrayList<Department>();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user