From c365b292802a41876f26eb4c2d3a3f074fe9501b Mon Sep 17 00:00:00 2001 From: wenshao Date: Sat, 2 Aug 2025 22:50:19 +0800 Subject: [PATCH] add testcase for issue #3687 --- .../fastjson2/JSONWriterWriteNameRawTest.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 core/src/test/java/com/alibaba/fastjson2/JSONWriterWriteNameRawTest.java diff --git a/core/src/test/java/com/alibaba/fastjson2/JSONWriterWriteNameRawTest.java b/core/src/test/java/com/alibaba/fastjson2/JSONWriterWriteNameRawTest.java new file mode 100644 index 000000000..65911c199 --- /dev/null +++ b/core/src/test/java/com/alibaba/fastjson2/JSONWriterWriteNameRawTest.java @@ -0,0 +1,34 @@ +package com.alibaba.fastjson2; + +import org.junit.jupiter.api.Test; + +import static com.alibaba.fastjson2.JSONWriter.PRETTY_2_SPACE; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class JSONWriterWriteNameRawTest { + @Test + public void test() { + long v = 3978425819141910881L; + + String expected = ",\n" + + "\"a1234567\":"; + { + JSONWriterUTF16 jsonWriter = (JSONWriterUTF16) JSONWriter.ofUTF16(); + jsonWriter.chars = new char[0]; + jsonWriter.pretty = PRETTY_2_SPACE; + jsonWriter.startObject = false; + + jsonWriter.writeName8Raw(v); + assertEquals(expected, jsonWriter.toString()); + } + { + JSONWriterUTF8 jsonWriter = (JSONWriterUTF8) JSONWriter.ofUTF8(); + jsonWriter.bytes = new byte[0]; + jsonWriter.pretty = PRETTY_2_SPACE; + jsonWriter.startObject = false; + + jsonWriter.writeName8Raw(v); + assertEquals(expected, jsonWriter.toString()); + } + } +}