优化
This commit is contained in:
@@ -7,11 +7,21 @@ import org.junit.jupiter.api.Test;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Arrays;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
class LoginIdentifierContractTest {
|
||||
|
||||
@Test
|
||||
void registrationExposesAnAccountPhoneInsteadOfALegalPersonPhoneAlias() {
|
||||
var componentNames = Arrays.stream(MerchantRegisterRequest.class.getRecordComponents())
|
||||
.map(component -> component.getName())
|
||||
.toList();
|
||||
|
||||
assertThat(componentNames).contains("phone").doesNotContain("legalPhone");
|
||||
}
|
||||
|
||||
@Test
|
||||
void mainlandMobileRuleRejectsPlaceholderNumbersAcrossJavaAndSql() throws Exception {
|
||||
try (var factory = Validation.buildDefaultValidatorFactory()) {
|
||||
|
||||
@@ -54,6 +54,10 @@ class IamOpenApiContractTest {
|
||||
.contains("UpdateMemberRequest:")
|
||||
.contains("membershipId: {type: integer, format: int64}")
|
||||
.contains("roleIds: {type: array, items: {type: integer, format: int64}}")
|
||||
.contains("/api/platform/v1/iam/tenants/administrator-phone-availability:")
|
||||
.doesNotContain("/api/platform/v1/iam/tenants/contact-phone-availability:")
|
||||
.contains("公司联系电话,不作为登录标识且不要求跨企业唯一")
|
||||
.contains("法人身份证、货代资质证书和银行开户许可证选填")
|
||||
.contains("'422': {$ref: '#/components/responses/UnprocessableEntity'}");
|
||||
|
||||
Map<String, Object> openApi = new Yaml().load(document);
|
||||
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
package com.baiyue.iam.repository;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
class IdentityContactDecouplingContractTest {
|
||||
|
||||
@Test
|
||||
void baselineKeepsCompanyContactNonUniqueAndUserPhoneAsLoginIdentity() throws Exception {
|
||||
String sql = new ClassPathResource("db/iam.sql")
|
||||
.getContentAsString(StandardCharsets.UTF_8);
|
||||
|
||||
assertThat(sql)
|
||||
.contains("公司联系电话,非登录标识且不要求跨企业唯一")
|
||||
.contains("用户登录手机号,与企业联系电话独立")
|
||||
.doesNotContain("UNIQUE KEY uk_iam_tenant_contact_phone")
|
||||
.doesNotContain("UNIQUE KEY uk_tenant_contact_phone");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user