Repository: commons-lang Updated Branches: refs/heads/master f5a9effeb -> c614fbcc7
LANG-1374: fix logic in isJsonArray method of JsonToStringStyle Project: http://git-wip-us.apache.org/repos/asf/commons-lang/repo Commit: http://git-wip-us.apache.org/repos/asf/commons-lang/commit/c614fbcc Tree: http://git-wip-us.apache.org/repos/asf/commons-lang/tree/c614fbcc Diff: http://git-wip-us.apache.org/repos/asf/commons-lang/diff/c614fbcc Branch: refs/heads/master Commit: c614fbcc79615f93d2c60a153db6e82d7474c425 Parents: f5a9eff Author: Bruno P. Kinoshita <[email protected]> Authored: Thu Jan 4 22:15:08 2018 +1300 Committer: Bruno P. Kinoshita <[email protected]> Committed: Thu Jan 4 22:15:08 2018 +1300 ---------------------------------------------------------------------- src/changes/changes.xml | 1 + .../commons/lang3/builder/ToStringStyle.java | 2 +- .../lang3/builder/JsonToStringStyleTest.java | 20 ++++++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/commons-lang/blob/c614fbcc/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 4a68f8c..a5e4301 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -46,6 +46,7 @@ The <action> type attribute can be add,update,fix,remove. <body> <release version="3.8" date="2017-MM-DD" description="New features and bug fixes. Requires Java 7, supports Java 8, 9, 10."> + <action issue="LANG-1374" type="fix" dev="kinow" due-to="Jaswanth Bala">Parsing Json Array failed</action> <action issue="LANG-1371" type="fix" dev="pschumacher" due-to="Dmitry Ovchinnikov">Fix TypeUtils#parameterize to work correctly with narrower-typed array</action> <action issue="LANG-1370" type="fix" dev="kinow" due-to="Andre Dieb">Fix EventCountCircuitBreaker increment batch</action> <action issue="LANG-1367" type="update" dev="ggregory" due-to="Gary Gregory">ObjectUtils.identityToString(Object) and friends should allocate builders and buffers with a size</action> http://git-wip-us.apache.org/repos/asf/commons-lang/blob/c614fbcc/src/main/java/org/apache/commons/lang3/builder/ToStringStyle.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/commons/lang3/builder/ToStringStyle.java b/src/main/java/org/apache/commons/lang3/builder/ToStringStyle.java index e24aa31..36fe867 100644 --- a/src/main/java/org/apache/commons/lang3/builder/ToStringStyle.java +++ b/src/main/java/org/apache/commons/lang3/builder/ToStringStyle.java @@ -2591,7 +2591,7 @@ public abstract class ToStringStyle implements Serializable { private boolean isJsonArray(final String valueAsString) { return valueAsString.startsWith(getArrayStart()) - && valueAsString.startsWith(getArrayEnd()); + && valueAsString.endsWith(getArrayEnd()); } private boolean isJsonObject(final String valueAsString) { http://git-wip-us.apache.org/repos/asf/commons-lang/blob/c614fbcc/src/test/java/org/apache/commons/lang3/builder/JsonToStringStyleTest.java ---------------------------------------------------------------------- diff --git a/src/test/java/org/apache/commons/lang3/builder/JsonToStringStyleTest.java b/src/test/java/org/apache/commons/lang3/builder/JsonToStringStyleTest.java index 6f76cfe..d6bbc64 100644 --- a/src/test/java/org/apache/commons/lang3/builder/JsonToStringStyleTest.java +++ b/src/test/java/org/apache/commons/lang3/builder/JsonToStringStyleTest.java @@ -358,6 +358,26 @@ public class JsonToStringStyleTest { } } + @Test + public void testArray() { + final Person p = new Person(); + p.name = "Jane Doe"; + p.age = 25; + p.smoker = true; + + assertEquals( + "{\"name\":\"Jane Doe\",\"age\":25,\"smoker\":true,\"groups\":['admin', 'manager', 'user']}", + new ToStringBuilder(p).append("name", p.name) + .append("age", p.age).append("smoker", p.smoker) + .append("groups", new Object() { + @Override + public String toString() { + return "['admin', 'manager', 'user']"; + } + }) + .toString()); + } + /** * An object with nested object structures used to test {@link ToStringStyle.JsonToStringStyle}. *
