修复相关BUG + 增加单元测试, 覆盖率100%
This commit is contained in:
25
validator.go
25
validator.go
@ -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 {
|
||||
// 未配置则认为支持
|
||||
|
Reference in New Issue
Block a user