From 611c3693c2a71c924767ae33a17156b1afb4ca64 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 05:01:02 +0000 Subject: [PATCH 1/3] Initial plan From b341afa7a054bef9ec1779e21ef2347a7e4eaa61 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 19 May 2026 05:07:26 +0000 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E5=BF=AB=E9=80=92=E4=BF=9D=E4=BB=B7=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=8F=AF=E4=BF=AE=E6=94=B9=E6=80=A7=E5=B9=B6=E8=A1=A5=E5=85=85?= =?UTF-8?q?=E5=8D=95=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Agent-Logs-Url: https://github.com/binarywang/WxJava/sessions/7b9ac09d-4355-480f-84b5-5c34c8bb6fb5 Co-authored-by: binarywang <1343140+binarywang@users.noreply.github.com> --- .../request/WxMaExpressOrderInsured.java | 5 ++- .../request/WxMaExpressOrderInsuredTest.java | 44 +++++++++++++++++++ 2 files changed, 47 insertions(+), 2 deletions(-) create mode 100644 weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java diff --git a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsured.java b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsured.java index d7ccda9aec..074b65382e 100644 --- a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsured.java +++ b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsured.java @@ -30,7 +30,8 @@ public class WxMaExpressOrderInsured implements Serializable { * */ @SerializedName("use_insured") - private final Integer useInsured = WxMaConstants.OrderAddInsured.INSURED_PROGRAM; + @Builder.Default + private Integer useInsured = WxMaConstants.OrderAddInsured.INSURED_PROGRAM; /** * 保价金额 @@ -41,6 +42,6 @@ public class WxMaExpressOrderInsured implements Serializable { */ @SerializedName("insured_value") @Builder.Default - private final Integer insuredValue = WxMaConstants.OrderAddInsured.DEFAULT_INSURED_VALUE; + private Integer insuredValue = WxMaConstants.OrderAddInsured.DEFAULT_INSURED_VALUE; } diff --git a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java new file mode 100644 index 0000000000..1a73c95a66 --- /dev/null +++ b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java @@ -0,0 +1,44 @@ +package cn.binarywang.wx.miniapp.bean.express.request; + +import cn.binarywang.wx.miniapp.constant.WxMaConstants; +import cn.binarywang.wx.miniapp.json.WxMaGsonBuilder; +import org.testng.annotations.Test; + +import static org.testng.Assert.assertEquals; +import static org.testng.Assert.assertTrue; + +public class WxMaExpressOrderInsuredTest { + + @Test + public void testDefaultValueWithNoArgsConstructor() { + WxMaExpressOrderInsured insured = new WxMaExpressOrderInsured(); + + assertEquals(insured.getUseInsured(), Integer.valueOf(WxMaConstants.OrderAddInsured.INSURED_PROGRAM)); + assertEquals(insured.getInsuredValue(), Integer.valueOf(WxMaConstants.OrderAddInsured.DEFAULT_INSURED_VALUE)); + } + + @Test + public void testCanModifyInsuredConfigBySetter() { + WxMaExpressOrderInsured insured = new WxMaExpressOrderInsured(); + insured.setUseInsured(WxMaConstants.OrderAddInsured.USE_INSURED); + insured.setInsuredValue(10000); + + assertEquals(insured.getUseInsured(), Integer.valueOf(WxMaConstants.OrderAddInsured.USE_INSURED)); + assertEquals(insured.getInsuredValue(), Integer.valueOf(10000)); + } + + @Test + public void testBuilderSupportsCustomInsuredConfig() { + WxMaExpressOrderInsured insured = WxMaExpressOrderInsured.builder() + .useInsured(WxMaConstants.OrderAddInsured.USE_INSURED) + .insuredValue(5000) + .build(); + + assertEquals(insured.getUseInsured(), Integer.valueOf(WxMaConstants.OrderAddInsured.USE_INSURED)); + assertEquals(insured.getInsuredValue(), Integer.valueOf(5000)); + + String json = WxMaGsonBuilder.create().toJson(insured); + assertTrue(json.contains("\"use_insured\":1")); + assertTrue(json.contains("\"insured_value\":5000")); + } +} From 05230aa538b04c339c3e018207656b68f18f32fc Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 20 May 2026 01:59:05 +0000 Subject: [PATCH 3/3] =?UTF-8?q?=E8=A1=A5=E5=85=85builder=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E5=80=BC=E5=8D=95=E5=85=83=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Agent-Logs-Url: https://github.com/binarywang/WxJava/sessions/efdcf29e-9406-4678-817a-d004ae6a5f17 Co-authored-by: binarywang <1343140+binarywang@users.noreply.github.com> --- .../express/request/WxMaExpressOrderInsuredTest.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java index 1a73c95a66..f308398147 100644 --- a/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java +++ b/weixin-java-miniapp/src/test/java/cn/binarywang/wx/miniapp/bean/express/request/WxMaExpressOrderInsuredTest.java @@ -41,4 +41,16 @@ public void testBuilderSupportsCustomInsuredConfig() { assertTrue(json.contains("\"use_insured\":1")); assertTrue(json.contains("\"insured_value\":5000")); } + + @Test + public void testBuilderDefaultsWhenNoFieldSet() { + WxMaExpressOrderInsured insured = WxMaExpressOrderInsured.builder().build(); + + assertEquals(insured.getUseInsured(), Integer.valueOf(WxMaConstants.OrderAddInsured.INSURED_PROGRAM)); + assertEquals(insured.getInsuredValue(), Integer.valueOf(WxMaConstants.OrderAddInsured.DEFAULT_INSURED_VALUE)); + + String json = WxMaGsonBuilder.create().toJson(insured); + assertTrue(json.contains("\"use_insured\":0")); + assertTrue(json.contains("\"insured_value\":0")); + } }