Index: ssts-web/src/test/java/test/forgon/tools/json/JsonUtilsTests.java =================================================================== diff -u --- ssts-web/src/test/java/test/forgon/tools/json/JsonUtilsTests.java (revision 0) +++ ssts-web/src/test/java/test/forgon/tools/json/JsonUtilsTests.java (revision 24718) @@ -0,0 +1,120 @@ +/** + * + */ +package test.forgon.tools.json; + +import static org.testng.Assert.assertTrue; + +import java.util.Date; + +import net.sf.json.JSONObject; + +import org.testng.annotations.Test; + +import com.forgon.tools.json.JSONUtil; + +/** + * @author dandan 2018年10月27日 下午3:44:56 + * + */ +public class JsonUtilsTests { + + public static class JsonTreeNode { + private Long id; + private String name; + private Date date = new Date(); + private double price = 0.0; + + public Long getId() { + return id; + } + + public String getName() { + return name; + } + + public Date getDate() { + return date; + } + + public double getPrice() { + return price; + } + + public void setId(Long id) { + this.id = id; + } + + public void setName(String name) { + this.name = name; + } + + public void setDate(Date date) { + this.date = date; + } + + public void setPrice(double price) { + this.price = price; + } + + } + + @Test + public void toJSONObjectWithInclude() { + JsonTreeNode node = new JsonTreeNode(); + JSONObject obj = JSONUtil.toJSONObjectWithInclude(node, new String[]{"name"}); + assertTrue(!obj.containsKey("id")); + assertTrue(obj.containsKey("name")); + assertTrue(!obj.containsKey("date")); + } + + @Test + public void toJSONObjectWithExclude() { + JsonTreeNode node = new JsonTreeNode(); + JSONObject obj = JSONUtil.toJSONObjectWithExclude(node, new String[]{"name"}); + assertTrue(obj.containsKey("id")); + assertTrue(!obj.containsKey("name")); + assertTrue(obj.containsKey("date")); + } + + @Test + public void toJSONObject() { + JsonTreeNode node = new JsonTreeNode(); + { + JSONObject obj = JSONUtil.toJSONObject(node, new String[]{"id","name"},new String[]{"name"}); + assertTrue(obj.containsKey("id")); + assertTrue(!obj.containsKey("name")); + assertTrue(!obj.containsKey("date")); + } + { + JSONObject obj = JSONUtil.toJSONObject(node, new String[]{"id"},new String[]{"name"}); + assertTrue(obj.containsKey("id")); + assertTrue(!obj.containsKey("name")); + assertTrue(!obj.containsKey("date")); + } + { + JSONObject obj = JSONUtil.toJSONObject(node, new String[]{"id"},new String[]{"id"}); + assertTrue(!obj.containsKey("id")); + assertTrue(!obj.containsKey("name")); + assertTrue(!obj.containsKey("date")); + } + { + JSONObject obj = JSONUtil.toJSONObject(node, null,new String[]{"id"}); + assertTrue(!obj.containsKey("id")); + assertTrue(obj.containsKey("name")); + assertTrue(obj.containsKey("date")); + } + { + JSONObject obj = JSONUtil.toJSONObject(node, new String[]{"id"},null); + assertTrue(obj.containsKey("id")); + assertTrue(!obj.containsKey("name")); + assertTrue(!obj.containsKey("date")); + } + { + JSONObject obj = JSONUtil.toJSONObject(node, null,null); + assertTrue(obj.containsKey("id")); + assertTrue(obj.containsKey("name")); + assertTrue(obj.containsKey("date")); + } + } +}