From bfa24a76737a2c8362a1300295b45bb5d248a1b6 Mon Sep 17 00:00:00 2001 From: "shaojin.wensj" Date: Sat, 13 Apr 2024 14:17:24 +0800 Subject: [PATCH] add testcase for issue #2426 --- .../com/alibaba/fastjson2/JSONFactory.java | 4 +++ .../fastjson2/issues_2400/Issue2426.java | 27 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 core/src/test/java/com/alibaba/fastjson2/issues_2400/Issue2426.java diff --git a/core/src/main/java/com/alibaba/fastjson2/JSONFactory.java b/core/src/main/java/com/alibaba/fastjson2/JSONFactory.java index d3c1ba35ec..31cdfefc9f 100644 --- a/core/src/main/java/com/alibaba/fastjson2/JSONFactory.java +++ b/core/src/main/java/com/alibaba/fastjson2/JSONFactory.java @@ -522,4 +522,8 @@ public static ObjectWriterCreator getContextWriterCreator() { public interface JSONPathCompiler { JSONPath compile(Class objectClass, JSONPath path); } + + public static String getDefaultWriterFormat() { + return defaultWriterFormat; + } } diff --git a/core/src/test/java/com/alibaba/fastjson2/issues_2400/Issue2426.java b/core/src/test/java/com/alibaba/fastjson2/issues_2400/Issue2426.java new file mode 100644 index 0000000000..b24cb389b4 --- /dev/null +++ b/core/src/test/java/com/alibaba/fastjson2/issues_2400/Issue2426.java @@ -0,0 +1,27 @@ +package com.alibaba.fastjson2.issues_2400; + +import com.alibaba.fastjson2.JSON; +import com.alibaba.fastjson2.JSONFactory; +import com.alibaba.fastjson2.JSONWriter; +import org.junit.jupiter.api.Test; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class Issue2426 { + @Test + public void test() { + String defaultWriterFormat = JSONFactory.getDefaultWriterFormat(); + try { + JSON.configWriterDateFormat("yyyy-MM-dd'T'HH:mm:ss"); + Date date = new Date(1712988987882L); + JSONWriter.Context writeContext = JSONFactory.createWriteContext(); + String json = JSON.toJSONString(date, writeContext); + assertEquals("\"2024-04-13T14:16:27\"", json); + } finally { + JSON.configWriterDateFormat(defaultWriterFormat); + } + assertEquals(defaultWriterFormat, JSONFactory.getDefaultWriterFormat()); + } +}