/src/test/java/com/alibaba/json/bvt/serializer/filters/PropertyFilter_double.java

https://github.com/alibaba/fastjson · Java · 149 lines · 113 code · 36 blank · 0 comment · 4 complexity · de73047e97b27f008b3854aa2906cc33 MD5 · raw file

  1. package com.alibaba.json.bvt.serializer.filters;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. import org.junit.Assert;
  5. import junit.framework.TestCase;
  6. import com.alibaba.fastjson.serializer.JSONSerializer;
  7. import com.alibaba.fastjson.serializer.PropertyFilter;
  8. import com.alibaba.fastjson.serializer.SerializeWriter;
  9. public class PropertyFilter_double extends TestCase {
  10. public void test_0() throws Exception {
  11. PropertyFilter filter = new PropertyFilter() {
  12. public boolean apply(Object source, String name, Object value) {
  13. return false;
  14. }
  15. };
  16. SerializeWriter out = new SerializeWriter();
  17. JSONSerializer serializer = new JSONSerializer(out);
  18. serializer.getPropertyFilters().add(filter);
  19. A a = new A();
  20. serializer.write(a);
  21. String text = out.toString();
  22. Assert.assertEquals("{}", text);
  23. }
  24. public void test_1() throws Exception {
  25. PropertyFilter filter = new PropertyFilter() {
  26. public boolean apply(Object source, String name, Object value) {
  27. if ("id".equals(name)) {
  28. Assert.assertTrue(value instanceof Double);
  29. return true;
  30. }
  31. return false;
  32. }
  33. };
  34. SerializeWriter out = new SerializeWriter();
  35. JSONSerializer serializer = new JSONSerializer(out);
  36. serializer.getPropertyFilters().add(filter);
  37. A a = new A();
  38. serializer.write(a);
  39. String text = out.toString();
  40. Assert.assertEquals("{\"id\":0.0}", text);
  41. }
  42. public void test_2() throws Exception {
  43. PropertyFilter filter = new PropertyFilter() {
  44. public boolean apply(Object source, String name, Object value) {
  45. if ("name".equals(name)) {
  46. return true;
  47. }
  48. return false;
  49. }
  50. };
  51. SerializeWriter out = new SerializeWriter();
  52. JSONSerializer serializer = new JSONSerializer(out);
  53. serializer.getPropertyFilters().add(filter);
  54. A a = new A();
  55. a.setName("chennp2008");
  56. serializer.write(a);
  57. String text = out.toString();
  58. Assert.assertEquals("{\"name\":\"chennp2008\"}", text);
  59. }
  60. public void test_3() throws Exception {
  61. PropertyFilter filter = new PropertyFilter() {
  62. public boolean apply(Object source, String name, Object value) {
  63. if ("name".equals(name)) {
  64. return true;
  65. }
  66. return false;
  67. }
  68. };
  69. SerializeWriter out = new SerializeWriter();
  70. JSONSerializer serializer = new JSONSerializer(out);
  71. serializer.getPropertyFilters().add(filter);
  72. Map<String, Object> map = new HashMap<String, Object>();
  73. map.put("name", "chennp2008");
  74. serializer.write(map);
  75. String text = out.toString();
  76. Assert.assertEquals("{\"name\":\"chennp2008\"}", text);
  77. }
  78. public void test_4() throws Exception {
  79. PropertyFilter filter = new PropertyFilter() {
  80. public boolean apply(Object source, String name, Object value) {
  81. if ("name".equals(name)) {
  82. return false;
  83. }
  84. return true;
  85. }
  86. };
  87. SerializeWriter out = new SerializeWriter();
  88. JSONSerializer serializer = new JSONSerializer(out);
  89. serializer.getPropertyFilters().add(filter);
  90. Map<String, Object> map = new HashMap<String, Object>();
  91. map.put("id", 3);
  92. map.put("name", "chennp2008");
  93. serializer.write(map);
  94. String text = out.toString();
  95. Assert.assertEquals("{\"id\":3}", text);
  96. }
  97. public static class A {
  98. private double id;
  99. private String name;
  100. public double getId() {
  101. return id;
  102. }
  103. public void setId(double id) {
  104. this.id = id;
  105. }
  106. public String getName() {
  107. return name;
  108. }
  109. public void setName(String name) {
  110. this.name = name;
  111. }
  112. }
  113. }