@@ -93,39 +93,49 @@ func Test_defaultValidateConvert(t *testing.T) {
93
93
t .Parallel ()
94
94
fValidators , err := fieldValidators (reflect .ValueOf (testModel {}))
95
95
require .NoError (t , err )
96
+ opts := getDefaultOptions ()
96
97
t .Run ("missing-column" , func (t * testing.T ) {
97
- e , err := defaultValidateConvert ("" , EqualOp , pointer ("alice" ), fValidators ["name" ])
98
+ e , err := defaultValidateConvert ("" , EqualOp , pointer ("alice" ), fValidators ["name" ], opts )
98
99
require .Error (t , err )
99
100
assert .Empty (t , e )
100
101
assert .ErrorIs (t , err , ErrMissingColumn )
101
102
assert .ErrorContains (t , err , "missing column" )
102
103
})
103
104
t .Run ("missing-comparison-op" , func (t * testing.T ) {
104
- e , err := defaultValidateConvert ("name" , "" , pointer ("alice" ), fValidators ["name" ])
105
+ e , err := defaultValidateConvert ("name" , "" , pointer ("alice" ), fValidators ["name" ], opts )
105
106
require .Error (t , err )
106
107
assert .Empty (t , e )
107
108
assert .ErrorIs (t , err , ErrMissingComparisonOp )
108
109
assert .ErrorContains (t , err , "missing comparison operator" )
109
110
})
110
111
t .Run ("missing-value" , func (t * testing.T ) {
111
- e , err := defaultValidateConvert ("name" , EqualOp , nil , fValidators ["name" ])
112
+ e , err := defaultValidateConvert ("name" , EqualOp , nil , fValidators ["name" ], opts )
112
113
require .Error (t , err )
113
114
assert .Empty (t , e )
114
115
assert .ErrorIs (t , err , ErrMissingComparisonValue )
115
116
assert .ErrorContains (t , err , "missing comparison value" )
116
117
})
117
118
t .Run ("missing-validator-func" , func (t * testing.T ) {
118
- e , err := defaultValidateConvert ("name" , EqualOp , pointer ("alice" ), validator {typ : "string" })
119
+ e , err := defaultValidateConvert ("name" , EqualOp , pointer ("alice" ), validator {typ : "string" }, opts )
119
120
require .Error (t , err )
120
121
assert .Empty (t , e )
121
122
assert .ErrorIs (t , err , ErrInvalidParameter )
122
123
assert .ErrorContains (t , err , "missing validator function" )
123
124
})
124
125
t .Run ("missing-validator-typ" , func (t * testing.T ) {
125
- e , err := defaultValidateConvert ("name" , EqualOp , pointer ("alice" ), validator {fn : fValidators ["name" ].fn })
126
+ e , err := defaultValidateConvert ("name" , EqualOp , pointer ("alice" ), validator {fn : fValidators ["name" ].fn }, opts )
126
127
require .Error (t , err )
127
128
assert .Empty (t , e )
128
129
assert .ErrorIs (t , err , ErrInvalidParameter )
129
130
assert .ErrorContains (t , err , "missing validator type" )
130
131
})
132
+ t .Run ("success-with-table-override" , func (t * testing.T ) {
133
+ opts .withTableColumnMap ["name" ] = "users.name"
134
+ e , err := defaultValidateConvert ("name" , EqualOp , pointer ("alice" ), validator {fn : fValidators ["name" ].fn , typ : "default" }, opts )
135
+ assert .Empty (t , err )
136
+ assert .NotEmpty (t , e )
137
+ assert .Equal (t , "users.name=?" , e .Condition , "condition" )
138
+ assert .Len (t , e .Args , 1 , "args" )
139
+ assert .Equal (t , "alice" , e .Args [0 ], "args[0]" )
140
+ })
131
141
}
0 commit comments