@@ -37,7 +37,7 @@ describe('InputFilter', () => {
37
37
document . body . appendChild ( divContainer ) ;
38
38
spyGetHeaderRow = vi . spyOn ( gridStub , 'getHeaderRowColumn' ) . mockReturnValue ( divContainer ) ;
39
39
40
- mockColumn = { id : 'duration' , field : 'duration' , filterable : true , filter : { model : Filters . input , operator : 'EQ' } } ;
40
+ mockColumn = { id : 'duration' , field : 'duration' , filterable : true , filter : { model : Filters . input } } ;
41
41
filterArguments = {
42
42
grid : gridStub ,
43
43
columnDef : mockColumn ,
@@ -128,7 +128,7 @@ describe('InputFilter', () => {
128
128
const filterFilledElms = divContainer . querySelectorAll < HTMLInputElement > ( 'input.filter-duration.filled' ) ;
129
129
130
130
expect ( filterFilledElms . length ) . toBe ( 1 ) ;
131
- expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : 'EQ ' , searchTerms : [ 'abc' ] , shouldTriggerQuery : true } ) ;
131
+ expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : '' , searchTerms : [ '= abc' ] , shouldTriggerQuery : true } ) ;
132
132
} ) ;
133
133
134
134
it ( 'should call "setValues" with extra spaces at the beginning of the searchTerms and trim value when "enableTrimWhiteSpace" is enabled in the column filter' , ( ) => {
@@ -167,7 +167,7 @@ describe('InputFilter', () => {
167
167
const filledInputElm = divContainer . querySelector ( '.search-filter.filter-duration.filled' ) as HTMLInputElement ;
168
168
169
169
expect ( filledInputElm ) . toBeTruthy ( ) ;
170
- expect ( spyCallback ) . toHaveBeenCalledWith ( undefined , { columnDef : mockColumn , operator : '> ' , searchTerms : [ '>9' ] , shouldTriggerQuery : true } ) ;
170
+ expect ( spyCallback ) . toHaveBeenCalledWith ( undefined , { columnDef : mockColumn , operator : '' , searchTerms : [ '>9' ] , shouldTriggerQuery : true } ) ;
171
171
} ) ;
172
172
173
173
it ( 'should call "setValues" and include an operator and expect the operator to show up in the output search string shown in the filter input text value' , ( ) => {
@@ -214,6 +214,24 @@ describe('InputFilter', () => {
214
214
215
215
filter . setValues ( 'abc' , 'a*' ) ;
216
216
expect ( filter . getValues ( ) ) . toBe ( 'abc*' ) ;
217
+
218
+ filter . setValues ( 'abc' , 'EQ' ) ;
219
+ expect ( filter . getValues ( ) ) . toBe ( '=abc' ) ;
220
+
221
+ filter . setValues ( 'abc' , 'GE' ) ;
222
+ expect ( filter . getValues ( ) ) . toBe ( '>=abc' ) ;
223
+
224
+ filter . setValues ( 'abc' , 'GT' ) ;
225
+ expect ( filter . getValues ( ) ) . toBe ( '>abc' ) ;
226
+
227
+ filter . setValues ( 'abc' , 'NE' ) ;
228
+ expect ( filter . getValues ( ) ) . toBe ( '!=abc' ) ;
229
+
230
+ filter . setValues ( 'abc' , 'LE' ) ;
231
+ expect ( filter . getValues ( ) ) . toBe ( '<=abc' ) ;
232
+
233
+ filter . setValues ( 'abc' , 'LT' ) ;
234
+ expect ( filter . getValues ( ) ) . toBe ( '<abc' ) ;
217
235
} ) ;
218
236
} ) ;
219
237
@@ -227,7 +245,7 @@ describe('InputFilter', () => {
227
245
filterElm . value = 'a' ;
228
246
filterElm . dispatchEvent ( new ( window . window as any ) . Event ( 'keyup' , { key : 'a' , keyCode : 97 , bubbles : true , cancelable : true } ) ) ;
229
247
230
- expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : 'EQ ' , searchTerms : [ 'a' ] , shouldTriggerQuery : true } ) ;
248
+ expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : '' , searchTerms : [ 'a' ] , shouldTriggerQuery : true } ) ;
231
249
} ) ;
232
250
233
251
it ( 'should trigger the callback method with a delay when "filterTypingDebounce" is set in grid options and user types something in the input' , ( ) => {
@@ -243,7 +261,7 @@ describe('InputFilter', () => {
243
261
244
262
vi . advanceTimersByTime ( 2 ) ;
245
263
246
- expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : 'EQ ' , searchTerms : [ 'a' ] , shouldTriggerQuery : true } ) ;
264
+ expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : '' , searchTerms : [ 'a' ] , shouldTriggerQuery : true } ) ;
247
265
} ) ;
248
266
249
267
it ( 'should trigger the callback method with a delay when BackendService is used with a "filterTypingDebounce" is set in grid options and user types something in the input' , ( ) => {
@@ -262,26 +280,28 @@ describe('InputFilter', () => {
262
280
263
281
vi . advanceTimersByTime ( 2 ) ;
264
282
265
- expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : 'EQ ' , searchTerms : [ 'a' ] , shouldTriggerQuery : true } ) ;
283
+ expect ( spyCallback ) . toHaveBeenCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : '' , searchTerms : [ 'a' ] , shouldTriggerQuery : true } ) ;
266
284
} ) ;
267
285
268
286
it ( 'should create the input filter with a default search term when passed as a filter argument' , ( ) => {
269
287
filterArguments . searchTerms = [ 'xyz' ] ;
288
+ mockColumn . filter ! . operator = 'EQ' ;
270
289
271
290
filter . init ( filterArguments ) ;
272
291
const filterElm = divContainer . querySelector ( 'input.filter-duration' ) as HTMLInputElement ;
273
292
274
- expect ( filterElm . value ) . toBe ( 'xyz' ) ;
293
+ expect ( filterElm . value ) . toBe ( '= xyz' ) ;
275
294
} ) ;
276
295
277
296
it ( 'should expect the input not to have the "filled" css class when the search term provided is an empty string' , ( ) => {
278
297
filterArguments . searchTerms = [ '' ] ;
298
+ mockColumn . filter ! . operator = 'EQ' ;
279
299
280
300
filter . init ( filterArguments ) ;
281
301
const filterElm = divContainer . querySelector ( 'input.filter-duration' ) as HTMLInputElement ;
282
302
const filterFilledElms = divContainer . querySelectorAll < HTMLInputElement > ( 'input.filter-duration.filled' ) ;
283
303
284
- expect ( filterElm . value ) . toBe ( '' ) ;
304
+ expect ( filterElm . value ) . toBe ( '= ' ) ;
285
305
expect ( filterFilledElms . length ) . toBe ( 0 ) ;
286
306
} ) ;
287
307
0 commit comments