修复相关BUG + 增加单元测试, 覆盖率100%

This commit is contained in:
2025-04-20 17:57:01 +08:00
parent 299edfcc9a
commit fb1d6bb34f
19 changed files with 669 additions and 134 deletions

View File

@ -11,25 +11,22 @@ package consts
type ValidatorRule string // 验证规则
func (vr *ValidatorRule) String() string {
if nil == vr {
return ""
}
return string(*vr)
func (vr ValidatorRule) String() string {
return string(vr)
}
func (vr *ValidatorRule) MarshalJSON() ([]byte, error) {
return []byte(vr.String()), nil
func (vr ValidatorRule) MarshalJSON() ([]byte, error) {
return []byte(`"` + vr.String() + `"`), nil
}
// IsValid 验证规则是否有效
func (vr *ValidatorRule) IsValid() bool {
_, exist := ValidatorRuleSupportDataTypeTable[*vr]
func (vr ValidatorRule) IsValid() bool {
_, exist := ValidatorRuleSupportDataTypeTable[vr]
if !exist {
return false
}
rule := ValidatorRuleSupportDataTypeTable[*vr].ValidatorRule
if vr.String() != (&rule).String() {
rule := ValidatorRuleSupportDataTypeTable[vr].ValidatorRule
if vr.String() != rule.String() {
return false
}
return exist
@ -40,8 +37,8 @@ func (vr *ValidatorRule) IsValid() bool {
// Author : go_developer@163.com<白茶清欢>
//
// Date : 16:10 2025/1/22
func (vr *ValidatorRule) Config() ValidatorRuleConfig {
return ValidatorRuleSupportDataTypeTable[*vr]
func (vr ValidatorRule) Config() ValidatorRuleConfig {
return ValidatorRuleSupportDataTypeTable[vr]
}
// IsSupportDataType 是否支持指定的数据类型
@ -49,7 +46,7 @@ func (vr *ValidatorRule) Config() ValidatorRuleConfig {
// Author : go_developer@163.com<白茶清欢>
//
// Date : 16:11 2025/1/22
func (vr *ValidatorRule) IsSupportDataType(dataType DataType) bool {
func (vr ValidatorRule) IsSupportDataType(dataType DataType) bool {
dataTypeList := vr.Config().SupportDataTypeList
if len(dataTypeList) == 0 {
// 未配置则认为支持