Browse Source

修复支付证书的拼接规则。

main
科技小王子 2 weeks ago
parent
commit
668486c9d4
  1. 79
      src/test/java/com/gxwebsoft/shop/CertificatePathTest.java

79
src/test/java/com/gxwebsoft/shop/CertificatePathTest.java

@ -0,0 +1,79 @@
package com.gxwebsoft.shop;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
/**
* 证书路径构建测试
*
* @author 科技小王子
* @since 2025-08-09
*/
public class CertificatePathTest {
@Test
public void testDevCertificatePath() {
// 模拟开发环境配置
String uploadPath = "/Users/gxwebsoft/JAVA/mp-java/src/main/resources/";
Integer tenantId = 10324;
String privateKeyFile = "apiclient_key.pem";
// 构建证书路径
String tenantCertPath = uploadPath + "dev/wechat/" + tenantId;
String privateKeyPath = tenantCertPath + "/" + privateKeyFile;
// 验证路径构建结果
String expectedTenantPath = "/Users/gxwebsoft/JAVA/mp-java/src/main/resources/dev/wechat/10324";
String expectedPrivateKeyPath = "/Users/gxwebsoft/JAVA/mp-java/src/main/resources/dev/wechat/10324/apiclient_key.pem";
assertEquals(expectedTenantPath, tenantCertPath);
assertEquals(expectedPrivateKeyPath, privateKeyPath);
System.out.println("开发环境证书路径测试通过:");
System.out.println("租户证书目录: " + tenantCertPath);
System.out.println("私钥文件路径: " + privateKeyPath);
}
@Test
public void testProdCertificatePath() {
// 模拟生产环境配置
String uploadPath = "/www/wwwroot/file.ws";
Integer tenantId = 10324;
String privateKeyFile = "apiclient_key.pem";
// 构建证书路径(生产环境不使用upload-path,而是从数据库读取)
// 这里只是为了对比展示
String tenantCertPath = uploadPath + "dev/wechat/" + tenantId;
String privateKeyPath = tenantCertPath + "/" + privateKeyFile;
// 验证路径构建结果
String expectedTenantPath = "/www/wwwroot/file.ws/dev/wechat/10324";
String expectedPrivateKeyPath = "/www/wwwroot/file.ws/dev/wechat/10324/apiclient_key.pem";
assertEquals(expectedTenantPath, tenantCertPath);
assertEquals(expectedPrivateKeyPath, privateKeyPath);
System.out.println("生产环境证书路径测试通过:");
System.out.println("租户证书目录: " + tenantCertPath);
System.out.println("私钥文件路径: " + privateKeyPath);
}
@Test
public void testMultipleTenants() {
String uploadPath = "/Users/gxwebsoft/JAVA/mp-java/src/main/resources/";
String privateKeyFile = "apiclient_key.pem";
// 测试多个租户的路径构建
Integer[] tenantIds = {10324, 10325, 10326};
for (Integer tenantId : tenantIds) {
String tenantCertPath = uploadPath + "dev/wechat/" + tenantId;
String privateKeyPath = tenantCertPath + "/" + privateKeyFile;
assertTrue(tenantCertPath.contains(tenantId.toString()));
assertTrue(privateKeyPath.endsWith(privateKeyFile));
System.out.println("租户 " + tenantId + " 证书路径: " + privateKeyPath);
}
}
}
Loading…
Cancel
Save