测试bean validate
diff --git a/common/src/main/java/com/supwisdom/dlpay/api/bean/OpenUserParam.java b/common/src/main/java/com/supwisdom/dlpay/api/bean/OpenUserParam.java
index ceaae42..09514e3 100644
--- a/common/src/main/java/com/supwisdom/dlpay/api/bean/OpenUserParam.java
+++ b/common/src/main/java/com/supwisdom/dlpay/api/bean/OpenUserParam.java
@@ -36,7 +36,6 @@
@NotEmpty(message = "证件号不能为空,且仅支持数字和字母")
private String idno;
@Sign
- @NotEmpty(message = "手机号格式错误")
@MobileNumber(message = "手机号格式错误")
private String mobile;
@Sign
diff --git a/common/src/main/java/com/supwisdom/dlpay/api/validator/IDNoCheckValidator.java b/common/src/main/java/com/supwisdom/dlpay/api/validator/IDNoCheckValidator.java
index 812ad55..9d67476 100644
--- a/common/src/main/java/com/supwisdom/dlpay/api/validator/IDNoCheckValidator.java
+++ b/common/src/main/java/com/supwisdom/dlpay/api/validator/IDNoCheckValidator.java
@@ -29,6 +29,10 @@
if (StringUtils.isEmpty(idno)) {
return false;
}
+ if (IDTypes.IDTYPE_IDCARD.value().equals(idtype) && idno.length() != 18) {
+ return false;
+ }
+ return true;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
diff --git a/common/src/test/java/com/supwisdom/dlpay/api/bean/CitizenCardPayinitParamTest.java b/common/src/test/java/com/supwisdom/dlpay/api/bean/CitizenCardPayinitParamTest.java
index f39af2e..3fa5c38 100644
--- a/common/src/test/java/com/supwisdom/dlpay/api/bean/CitizenCardPayinitParamTest.java
+++ b/common/src/test/java/com/supwisdom/dlpay/api/bean/CitizenCardPayinitParamTest.java
@@ -1,12 +1,16 @@
package com.supwisdom.dlpay.api.bean;
+import com.supwisdom.dlpay.api.util.IDTypes;
+import com.supwisdom.dlpay.api.util.SexTypes;
import org.junit.Test;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;
-import java.util.Set;
+import java.util.*;
+import java.util.stream.Collectors;
+import java.util.stream.StreamSupport;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
@@ -25,23 +29,41 @@
public void testCitizenPay() {
CitizenCardPayinitParam param = new CitizenCardPayinitParam();
- Set<ConstraintViolation<CitizenCardPayinitParam>> violations = validator.validate(param);
+ List<ConstraintViolation<CitizenCardPayinitParam>> violations = validate(param);
+ String message = getViolationMessage(violations);
+ assertFalse(message, violations.isEmpty());
+ }
+
+ private <T> List<ConstraintViolation<T>> validate(T param) {
+ Set<ConstraintViolation<T>> violations = validator.validate(param);
+ List<ConstraintViolation<T>> result = StreamSupport.stream(violations.spliterator(), false)
+ .collect(Collectors.toList());
+ return result;
+ }
+
+ private <T> String getViolationMessage(List<ConstraintViolation<T>> violations) {
StringBuilder message = new StringBuilder();
- for (ConstraintViolation<CitizenCardPayinitParam> item : violations) {
+ for (ConstraintViolation<T> item : violations) {
message.append(item.getMessage()).append("\n");
}
- assertFalse(message.toString(), violations.isEmpty());
+ return message.toString();
}
@Test
public void testOpenUserParam() {
OpenUserParam param = new OpenUserParam();
- param.setIdtype("12323");
- Set<ConstraintViolation<OpenUserParam>> violations = validator.validate(param);
- StringBuilder message = new StringBuilder();
- for (ConstraintViolation<OpenUserParam> item : violations) {
- message.append(item.getMessage()).append("\n");
- }
- assertFalse(message.toString(), violations.isEmpty());
+ List<ConstraintViolation<OpenUserParam>> result = validate(param);
+ assertFalse(getViolationMessage(result), result.isEmpty());
+
+ param.setIdtype(IDTypes.IDTYPE_IDCARD.value());
+ param.setIdno("123213");
+ param.setUid("1231323");
+ param.setName("lily");
+ param.setSex(SexTypes.MALE.value());
+ param.setMobile("+8618272733888");
+
+ result = validate(param);
+ assertTrue(getViolationMessage(result), result.isEmpty());
+
}
}
\ No newline at end of file
diff --git a/payapi-sdk/build.gradle b/payapi-sdk/build.gradle
index 2c27e28..7f5aafa 100644
--- a/payapi-sdk/build.gradle
+++ b/payapi-sdk/build.gradle
@@ -78,4 +78,4 @@
}
jar.dependsOn(fullJar)
-publish.dependsOn(fullJar)
\ No newline at end of file
+publish.dependsOn(jar)
\ No newline at end of file