package com.alibaba.json.bvt.bug;
import org.junit.Assert;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.alibaba.fastjson.serializer.ValueFilter;
import junit.framework.TestCase;
public class Bug_for_issue_572_private extends TestCase {
public void test_for_issue() throws Exception {
Model model = new Model();
model.id = 1001;
model.name = "wenshao";
String text = JSON.toJSONString(model, SerializerFeature.WriteNonStringValueAsString);
Assert.assertEquals("{\"id\":\"1001\",\"name\":\"wenshao\"}", text);
}
public void test_for_issue_1() throws Exception {
Model model = new Model();
model.id = 1001;
model.name = "wenshao";
ValueFilter valueFilter = new ValueFilter() {
@Override
public Object process(Object object, String name, Object value) {
if (value instanceof Number) {
return null;
}
return value;
}
};
String text = JSON.toJSONString(model, valueFilter, SerializerFeature.WriteNonStringValueAsString);
Assert.assertEquals("{\"id\":\"1001\",\"name\":\"wenshao\"}", text);
}
private static class Model {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}