From fcf1a122409a8e727b871fb659716b48c921bb09 Mon Sep 17 00:00:00 2001 From: Nancyzxy <11912039@mail.sustech.edu.cn> Date: Fri, 22 Apr 2022 23:07:34 +0800 Subject: [PATCH] fix issue json-path#762 --- .../spi/json/JsonSmartJsonProvider.java | 2 ++ .../java/com/jayway/jsonpath/Issue_762.java | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 json-path/src/test/java/com/jayway/jsonpath/Issue_762.java diff --git a/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonSmartJsonProvider.java b/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonSmartJsonProvider.java index 66172c5e..5e68ffac 100644 --- a/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonSmartJsonProvider.java +++ b/json-path/src/main/java/com/jayway/jsonpath/spi/json/JsonSmartJsonProvider.java @@ -83,6 +83,8 @@ public class JsonSmartJsonProvider extends AbstractJsonProvider { return JSONObject.toJSONString((Map) obj, JSONStyle.LT_COMPRESS); } else if (obj instanceof List) { return JSONArray.toJSONString((List) obj, JSONStyle.LT_COMPRESS); + } else if (obj instanceof Number || obj instanceof Boolean){ + return JSONValue.toJSONString(obj); } else { throw new UnsupportedOperationException(obj.getClass().getName() + " can not be converted to JSON"); } diff --git a/json-path/src/test/java/com/jayway/jsonpath/Issue_762.java b/json-path/src/test/java/com/jayway/jsonpath/Issue_762.java new file mode 100644 index 00000000..dcb04702 --- /dev/null +++ b/json-path/src/test/java/com/jayway/jsonpath/Issue_762.java @@ -0,0 +1,18 @@ +package com.jayway.jsonpath; + +import org.junit.Test; + + +/** + * test for issue 782 + */ + +public class Issue_762 { + @Test + public void testParseJsonValue(){ + assert(JsonPath.parse(5).jsonString().equals("5")); + assert(JsonPath.parse(5.0).jsonString().equals("5.0")); + assert(JsonPath.parse(true).jsonString().equals("true")); + assert(JsonPath.parse(false).jsonString().equals("false")); + } +}