diff --git a/baked_in.go b/baked_in.go index 91fa2c7..ce05ac8 100644 --- a/baked_in.go +++ b/baked_in.go @@ -791,6 +791,9 @@ func isNeField(fl FieldLevel) bool { case reflect.Slice, reflect.Map, reflect.Array: return int64(field.Len()) != int64(currentField.Len()) + case reflect.Bool: + return field.Bool() != currentField.Bool() + case reflect.Struct: fieldType := field.Type() diff --git a/validator_test.go b/validator_test.go index 982446d..7d517ec 100644 --- a/validator_test.go +++ b/validator_test.go @@ -4589,6 +4589,7 @@ func TestIsNeFieldValidation(t *testing.T) { i := 1 j = 1 k = 1.543 + b := true arr := []string{"test"} now := time.Now().UTC() @@ -4598,6 +4599,7 @@ func TestIsNeFieldValidation(t *testing.T) { i2 := 3 j2 = 2 k2 = 1.5434456 + b2 := false arr2 := []string{"test", "test2"} arr3 := []string{"test"} now2 := now @@ -4614,6 +4616,9 @@ func TestIsNeFieldValidation(t *testing.T) { errs = validate.VarWithValue(k2, k, "nefield") Equal(t, errs, nil) + errs = validate.VarWithValue(b2, b, "nefield") + Equal(t, errs, nil) + errs = validate.VarWithValue(arr2, arr, "nefield") Equal(t, errs, nil)