1
- import { GridOption , FilterArguments , Column } from '../../models' ;
1
+ import { GridOption , FilterArguments , Column , ColumnFilter } from '../../models' ;
2
2
import { Filters } from '..' ;
3
3
import { SliderFilter } from '../sliderFilter' ;
4
4
@@ -23,7 +23,7 @@ describe('SliderFilter', () => {
23
23
let divContainer : HTMLDivElement ;
24
24
let filter : SliderFilter ;
25
25
let filterArguments : FilterArguments ;
26
- let spyGetHeaderRow ;
26
+ let spyGetHeaderRow : jest . SpyInstance < any , any > ;
27
27
let mockColumn : Column ;
28
28
29
29
beforeEach ( ( ) => {
@@ -47,7 +47,7 @@ describe('SliderFilter', () => {
47
47
} ) ;
48
48
49
49
it ( 'should throw an error when trying to call init without any arguments' , ( ) => {
50
- expect ( ( ) => filter . init ( null ) ) . toThrowError ( '[Angular-SlickGrid ] A filter must always have an "init()" with valid arguments.' ) ;
50
+ expect ( ( ) => filter . init ( null as any ) ) . toThrowError ( '[Angular-Slickgrid ] A filter must always have an "init()" with valid arguments.' ) ;
51
51
} ) ;
52
52
53
53
it ( 'should initialize the filter' , ( ) => {
@@ -63,7 +63,7 @@ describe('SliderFilter', () => {
63
63
64
64
filter . init ( filterArguments ) ;
65
65
filter . setValues ( [ '2' ] ) ;
66
- const filterElm = divContainer . querySelector ( '.search-filter.slider-container.filter-duration input' ) ;
66
+ const filterElm = divContainer . querySelector ( '.search-filter.slider-container.filter-duration input' ) as HTMLInputElement ;
67
67
filterElm . dispatchEvent ( new CustomEvent ( 'change' ) ) ;
68
68
69
69
expect ( spyCallback ) . toHaveBeenLastCalledWith ( expect . anything ( ) , { columnDef : mockColumn , operator : 'EQ' , searchTerms : [ '2' ] , shouldTriggerQuery : true } ) ;
@@ -74,7 +74,7 @@ describe('SliderFilter', () => {
74
74
75
75
filter . init ( filterArguments ) ;
76
76
filter . setValues ( 3 ) ;
77
- const filterElm = divContainer . querySelector ( '.search-filter.slider-container.filter-duration input' ) ;
77
+ const filterElm = divContainer . querySelector ( '.search-filter.slider-container.filter-duration input' ) as HTMLInputElement ;
78
78
const mockEvent = new Event ( 'change' ) ;
79
79
Object . defineProperty ( mockEvent , 'target' , { writable : true , configurable : true , value : { value : '13' } } ) ;
80
80
filterElm . dispatchEvent ( mockEvent ) ;
@@ -88,7 +88,7 @@ describe('SliderFilter', () => {
88
88
filterArguments . searchTerms = [ 3 ] ;
89
89
90
90
filter . init ( filterArguments ) ;
91
- const filterNumberElm = divContainer . querySelector < HTMLInputElement > ( '.input-group-text' ) ;
91
+ const filterNumberElm = divContainer . querySelector ( '.input-group-text' ) as HTMLInputElement ;
92
92
const filterFilledElms = divContainer . querySelectorAll ( '.search-filter.slider-container.filter-duration.filled' ) ;
93
93
94
94
expect ( filterFilledElms . length ) . toBe ( 1 ) ;
@@ -98,11 +98,11 @@ describe('SliderFilter', () => {
98
98
99
99
it ( 'should create the input filter with default search terms and a different step size when "valueStep" is provided' , ( ) => {
100
100
filterArguments . searchTerms = [ 15 ] ;
101
- mockColumn . filter . valueStep = 5 ;
101
+ ( mockColumn . filter as ColumnFilter ) . valueStep = 5 ;
102
102
103
103
filter . init ( filterArguments ) ;
104
- const filterNumberElm = divContainer . querySelector < HTMLInputElement > ( '.input-group-text' ) ;
105
- const filterInputElm = divContainer . querySelector < HTMLInputElement > ( '.search-filter.slider-container.filter-duration input' ) ;
104
+ const filterNumberElm = divContainer . querySelector ( '.input-group-text' ) as HTMLInputElement ;
105
+ const filterInputElm = divContainer . querySelector ( '.search-filter.slider-container.filter-duration input' ) as HTMLInputElement ;
106
106
107
107
expect ( filterInputElm . step ) . toBe ( '5' ) ;
108
108
expect ( filterNumberElm . textContent ) . toBe ( '15' ) ;
@@ -117,7 +117,7 @@ describe('SliderFilter', () => {
117
117
118
118
filter . init ( filterArguments ) ;
119
119
120
- const filterNumberElm = divContainer . querySelector < HTMLInputElement > ( '.input-group-text' ) ;
120
+ const filterNumberElm = divContainer . querySelector ( '.input-group-text' ) as HTMLInputElement ;
121
121
122
122
expect ( filterNumberElm . textContent ) . toBe ( '4' ) ;
123
123
expect ( filter . getValues ( ) ) . toEqual ( 4 ) ;
@@ -133,15 +133,15 @@ describe('SliderFilter', () => {
133
133
134
134
filter . init ( filterArguments ) ;
135
135
136
- const filterNumberElm = divContainer . querySelector < HTMLInputElement > ( '.input-group-text' ) ;
136
+ const filterNumberElm = divContainer . querySelector ( '.input-group-text' ) as HTMLInputElement ;
137
137
138
138
expect ( filterNumberElm . textContent ) . toBe ( '4' ) ;
139
139
expect ( filter . getValues ( ) ) . toEqual ( 4 ) ;
140
140
} ) ;
141
141
142
142
it ( 'should create the input filter with default search terms range but without showing side numbers when "hideSliderNumber" is set in params' , ( ) => {
143
143
filterArguments . searchTerms = [ 3 ] ;
144
- mockColumn . filter . params = { hideSliderNumber : true } ;
144
+ ( mockColumn . filter as ColumnFilter ) . params = { hideSliderNumber : true } ;
145
145
146
146
filter . init ( filterArguments ) ;
147
147
0 commit comments