You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by ja...@apache.org on 2011/05/31 21:24:28 UTC
svn commit: r1129864 - in /struts/struts2/trunk/plugins/json/src/test:
java/org/apache/struts2/json/ resources/org/apache/struts2/json/
Author: jafl
Date: Tue May 31 19:24:27 2011
New Revision: 1129864
URL: http://svn.apache.org/viewvc?rev=1129864&view=rev
Log:
WW-3638 additional unit test for multi-level array in includeProperties
Added:
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt
- copied, changed from r1129833, struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt
Modified:
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java
struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt
struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json.txt
Modified: struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java?rev=1129864&r1=1129863&r2=1129864&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java (original)
+++ struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/JSONResultTest.java Tue May 31 19:24:27 2011
@@ -28,8 +28,10 @@ import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.LinkedHashMap;
+import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import java.util.regex.Pattern;
import javax.servlet.http.HttpServletResponse;
@@ -530,6 +532,47 @@ public class JSONResultTest extends Stru
assertEquals("application/json;charset=ISO-8859-1", response.getContentType());
}
+ public void testIncludePropertiesWithSetList() throws Exception {
+ JSONResult result = new JSONResult();
+ result.setIncludeProperties("^set\\[\\d+\\]\\.list\\[\\d+\\]\\.booleanField");
+ TestAction action = new TestAction();
+ stack.push(action);
+
+ Set set = new LinkedHashSet();
+
+ TestAction a1 = new TestAction();
+
+ List list = new ArrayList();
+
+ list.add(new Bean());
+ list.add(new Bean());
+ list.add(new Bean());
+
+ a1.setList(list);
+ set.add(a1);
+
+ TestAction a2 = new TestAction();
+
+ list = new ArrayList();
+
+ list.add(new Bean());
+ list.add(new Bean());
+
+ a2.setList(list);
+ set.add(a2);
+
+ action.setSet(set);
+
+ this.invocation.setAction(action);
+ result.execute(this.invocation);
+
+ String json = response.getContentAsString();
+ String normalizedActual = TestUtils.normalize(json, true);
+ String normalizedExpected = TestUtils.normalize(JSONResultTest.class.getResource("json-11.txt"));
+ assertEquals(normalizedExpected, normalizedActual);
+ assertEquals("application/json;charset=ISO-8859-1", response.getContentType());
+ }
+
@Override
protected void setUp() throws Exception {
super.setUp();
Modified: struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java?rev=1129864&r1=1129863&r2=1129864&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java (original)
+++ struts/struts2/trunk/plugins/json/src/test/java/org/apache/struts2/json/TestAction.java Tue May 31 19:24:27 2011
@@ -23,6 +23,7 @@ package org.apache.struts2.json;
import java.util.Date;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import org.apache.struts2.json.annotations.JSON;
@@ -37,6 +38,7 @@ public class TestAction extends ActionSu
private List collection;
private List collection2;
private Map map;
+ private Set set;
private String foo;
private String result;
private String[] array;
@@ -82,6 +84,14 @@ public class TestAction extends ActionSu
this.map = map;
}
+ public Set getSet() {
+ return this.set;
+ }
+
+ public void setSet(Set set) {
+ this.set = set;
+ }
+
public String getFoo() {
return this.foo;
}
Copied: struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt (from r1129833, struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt)
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt?p2=struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt&p1=struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt&r1=1129833&r2=1129864&rev=1129864&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-10.txt (original)
+++ struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-11.txt Tue May 31 19:24:27 2011
@@ -1,3 +1,6 @@
{
- "list":[{"booleanField":false},{"booleanField":false},{"booleanField":false}]
+ "set":[
+ {"list":[{"booleanField":false},{"booleanField":false},{"booleanField":false}]},
+ {"list":[{"booleanField":false},{"booleanField":false}]}
+ ]
}
Modified: struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt?rev=1129864&r1=1129863&r2=1129864&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt (original)
+++ struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json-3.txt Tue May 31 19:24:27 2011
@@ -39,5 +39,6 @@
"a": 1,
"c": [1.0, 2.0]
},
- "result":null
+ "result":null,
+ "set":null
} */
\ No newline at end of file
Modified: struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json.txt
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json.txt?rev=1129864&r1=1129863&r2=1129864&view=diff
==============================================================================
--- struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json.txt (original)
+++ struts/struts2/trunk/plugins/json/src/test/resources/org/apache/struts2/json/json.txt Tue May 31 19:24:27 2011
@@ -3,20 +3,20 @@
"bean": null,
"collection": ["b", 1, [10, 12]],
"collection2": [{
- "bigDecimal": 111111.111111,
- "bigInteger": 111111111111,
+ "bigDecimal": 111111.111111,
+ "bigInteger": 111111111111,
"booleanField": true,
"byteField": 0,
"charField": "s",
"doubleField": 10.1,
"enumBean": "One",
"enumField": "ValueA",
- "floatField": 1.5,
+ "floatField": 1.5,
"intField": 10,
"longField": 100,
"objectField": {
- "bigDecimal": null,
- "bigInteger": null,
+ "bigDecimal": null,
+ "bigInteger": null,
"booleanField": false,
"byteField": 0,
"charField": "\u0000",
@@ -28,8 +28,8 @@
"longField":0,
"objectField":null,
"stringField":" "
- },
- "stringField": "str"
+ },
+ "stringField": "str"
}],
"date": "1999-12-31T11:59:59",
"date2": "31\/12\/99",
@@ -39,5 +39,6 @@
"a": 1,
"c": [1.0, 2.0]
},
- "result":null
+ "result":null,
+ "set":null
}
\ No newline at end of file