@@ -6,7 +6,7 @@ import { splitFilters, queryStrings, groupedFilters } from '../../../__tests__/m
66
77// Test target
88import { validateFlagSets , validateSplitFilters } from '../splitFilters' ;
9- import { SETTINGS_SPLITS_FILTER , ERROR_INVALID , ERROR_EMPTY_ARRAY , ERROR_SETS_FILTER_EXCLUSIVE , WARN_SPLITS_FILTER_INVALID , WARN_SPLITS_FILTER_EMPTY , WARN_TRIMMING , WARN_SPLITS_FILTER_INVALID_SET , WARN_SPLITS_FILTER_LOWERCASE_SET , WARN_FLAGSET_NOT_CONFIGURED , WARN_SPLITS_FILTER_IGNORED } from '../../../logger/constants' ;
9+ import { SETTINGS_SPLITS_FILTER , ERROR_INVALID , ERROR_EMPTY_ARRAY , ERROR_SETS_FILTER_EXCLUSIVE , WARN_SPLITS_FILTER_INVALID , WARN_SPLITS_FILTER_EMPTY , WARN_TRIMMING , WARN_INVALID_FLAGSET , WARN_LOWERCASE_FLAGSET , WARN_FLAGSET_NOT_CONFIGURED , WARN_SPLITS_FILTER_IGNORED , LOG_PREFIX_SETTINGS } from '../../../logger/constants' ;
1010
1111describe ( 'validateSplitFilters' , ( ) => {
1212
@@ -113,18 +113,18 @@ describe('validateSplitFilters', () => {
113113 expect ( loggerMock . error . mock . calls [ 0 ] ) . toEqual ( [ ERROR_SETS_FILTER_EXCLUSIVE ] ) ;
114114
115115 expect ( validateSplitFilters ( loggerMock , splitFilters [ 7 ] , LOCALHOST_MODE ) ) . toEqual ( getOutput ( 7 ) ) ; // lowercase and regexp
116- expect ( loggerMock . warn . mock . calls [ 3 ] ) . toEqual ( [ WARN_SPLITS_FILTER_LOWERCASE_SET , [ 'seT_c' ] ] ) ; // lowercase
117- expect ( loggerMock . warn . mock . calls [ 4 ] ) . toEqual ( [ WARN_SPLITS_FILTER_LOWERCASE_SET , [ 'set_B' ] ] ) ; // lowercase
118- expect ( loggerMock . warn . mock . calls [ 5 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set_ 1' , regexp , 'set_ 1' ] ] ) ; // empty spaces
119- expect ( loggerMock . warn . mock . calls [ 6 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set _3' , regexp , 'set _3' ] ] ) ; // empty spaces
120- expect ( loggerMock . warn . mock . calls [ 7 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ '_set_2' , regexp , '_set_2' ] ] ) ; // start with a letter
121- expect ( loggerMock . warn . mock . calls [ 8 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set_1234567890_1234567890_234567890_1234567890_1234567890' , regexp , 'set_1234567890_1234567890_234567890_1234567890_1234567890' ] ] ) ; // max of 50 characters
116+ expect ( loggerMock . warn . mock . calls [ 3 ] ) . toEqual ( [ WARN_LOWERCASE_FLAGSET , [ LOG_PREFIX_SETTINGS , 'seT_c' ] ] ) ; // lowercase
117+ expect ( loggerMock . warn . mock . calls [ 4 ] ) . toEqual ( [ WARN_LOWERCASE_FLAGSET , [ LOG_PREFIX_SETTINGS , 'set_B' ] ] ) ; // lowercase
118+ expect ( loggerMock . warn . mock . calls [ 5 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ LOG_PREFIX_SETTINGS , 'set_ 1' , regexp , 'set_ 1' ] ] ) ; // empty spaces
119+ expect ( loggerMock . warn . mock . calls [ 6 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ LOG_PREFIX_SETTINGS , 'set _3' , regexp , 'set _3' ] ] ) ; // empty spaces
120+ expect ( loggerMock . warn . mock . calls [ 7 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ LOG_PREFIX_SETTINGS , '_set_2' , regexp , '_set_2' ] ] ) ; // start with a letter
121+ expect ( loggerMock . warn . mock . calls [ 8 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ LOG_PREFIX_SETTINGS , 'set_1234567890_1234567890_234567890_1234567890_1234567890' , regexp , 'set_1234567890_1234567890_234567890_1234567890_1234567890' ] ] ) ; // max of 50 characters
122122 expect ( loggerMock . error . mock . calls [ 1 ] ) . toEqual ( [ ERROR_SETS_FILTER_EXCLUSIVE ] ) ;
123123
124124 expect ( validateSplitFilters ( loggerMock , splitFilters [ 8 ] , PRODUCER_MODE ) ) . toEqual ( getOutput ( 8 ) ) ; // lowercase and dedupe
125- expect ( loggerMock . warn . mock . calls [ 9 ] ) . toEqual ( [ WARN_SPLITS_FILTER_LOWERCASE_SET , [ 'SET_2' ] ] ) ; // lowercase
126- expect ( loggerMock . warn . mock . calls [ 10 ] ) . toEqual ( [ WARN_SPLITS_FILTER_LOWERCASE_SET , [ 'set_B' ] ] ) ; // lowercase
127- expect ( loggerMock . warn . mock . calls [ 11 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set_3!' , regexp , 'set_3!' ] ] ) ; // special character
125+ expect ( loggerMock . warn . mock . calls [ 9 ] ) . toEqual ( [ WARN_LOWERCASE_FLAGSET , [ LOG_PREFIX_SETTINGS , 'SET_2' ] ] ) ; // lowercase
126+ expect ( loggerMock . warn . mock . calls [ 10 ] ) . toEqual ( [ WARN_LOWERCASE_FLAGSET , [ LOG_PREFIX_SETTINGS , 'set_B' ] ] ) ; // lowercase
127+ expect ( loggerMock . warn . mock . calls [ 11 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ LOG_PREFIX_SETTINGS , 'set_3!' , regexp , 'set_3!' ] ] ) ; // special character
128128 expect ( loggerMock . error . mock . calls [ 2 ] ) . toEqual ( [ ERROR_SETS_FILTER_EXCLUSIVE ] ) ;
129129
130130 expect ( loggerMock . warn . mock . calls . length ) . toEqual ( 12 ) ;
@@ -133,69 +133,70 @@ describe('validateSplitFilters', () => {
133133
134134 test ( 'validateFlagSets - Flag set validation for evaluations' , ( ) => {
135135
136- let flagSetsFilter = [ 'set_1' , 'set_2' ] ;
136+ const flagSetsFilter = [ 'set_1' , 'set_2' ] ;
137+ const METHOD_NAME = 'test_method' ;
137138
138139 // empty array
139- expect ( validateFlagSets ( loggerMock , 'test_method' , [ ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
140+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
140141
141142 // must start with a letter or number
142- expect ( validateFlagSets ( loggerMock , 'test_method' , [ '_set_1' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
143- expect ( loggerMock . warn . mock . calls [ 0 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ '_set_1' , regexp , '_set_1' ] ] ) ;
143+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ '_set_1' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
144+ expect ( loggerMock . warn . mock . calls [ 0 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , '_set_1' , regexp , '_set_1' ] ] ) ;
144145
145146 // can contain _a-z0-9
146- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set*1' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
147- expect ( loggerMock . warn . mock . calls [ 1 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*1' , regexp , 'set*1' ] ] ) ;
147+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set*1' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
148+ expect ( loggerMock . warn . mock . calls [ 1 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*1' , regexp , 'set*1' ] ] ) ;
148149
149150 // have a max length of 50 characters
150151 const longName = '1234567890_1234567890_1234567890_1234567890_1234567890' ;
151- expect ( validateFlagSets ( loggerMock , 'test_method' , [ longName ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
152- expect ( loggerMock . warn . mock . calls [ 2 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ longName , regexp , longName ] ] ) ;
152+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ longName ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
153+ expect ( loggerMock . warn . mock . calls [ 2 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , longName , regexp , longName ] ] ) ;
153154
154155 // both set names invalid -> empty list & warn
155- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set*1' , 'set*3' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
156- expect ( loggerMock . warn . mock . calls [ 3 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*1' , regexp , 'set*1' ] ] ) ;
157- expect ( loggerMock . warn . mock . calls [ 4 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*3' , regexp , 'set*3' ] ] ) ;
156+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set*1' , 'set*3' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
157+ expect ( loggerMock . warn . mock . calls [ 3 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*1' , regexp , 'set*1' ] ] ) ;
158+ expect ( loggerMock . warn . mock . calls [ 4 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*3' , regexp , 'set*3' ] ] ) ;
158159
159160 // only set_1 is valid => [set_1] & warn
160- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_1' , 'set*3' ] , flagSetsFilter ) ) . toEqual ( [ 'set_1' ] ) ;
161- expect ( loggerMock . warn . mock . calls [ 5 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*3' , regexp , 'set*3' ] ] ) ;
161+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_1' , 'set*3' ] , flagSetsFilter ) ) . toEqual ( [ 'set_1' ] ) ;
162+ expect ( loggerMock . warn . mock . calls [ 5 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*3' , regexp , 'set*3' ] ] ) ;
162163
163164 // set_3 not included in configuration but set_1 included => [set_1] & warn
164- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_1' , 'set_3' ] , flagSetsFilter ) ) . toEqual ( [ 'set_1' ] ) ;
165- expect ( loggerMock . warn . mock . calls [ 6 ] ) . toEqual ( [ WARN_FLAGSET_NOT_CONFIGURED , [ 'test_method' , 'set_3' ] ] ) ;
165+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_1' , 'set_3' ] , flagSetsFilter ) ) . toEqual ( [ 'set_1' ] ) ;
166+ expect ( loggerMock . warn . mock . calls [ 6 ] ) . toEqual ( [ WARN_FLAGSET_NOT_CONFIGURED , [ METHOD_NAME , 'set_3' ] ] ) ;
166167
167168 // set_3 not included in configuration => [] & warn
168- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_3' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
169- expect ( loggerMock . warn . mock . calls [ 7 ] ) . toEqual ( [ WARN_FLAGSET_NOT_CONFIGURED , [ 'test_method' , 'set_3' ] ] ) ;
169+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_3' ] , flagSetsFilter ) ) . toEqual ( [ ] ) ;
170+ expect ( loggerMock . warn . mock . calls [ 7 ] ) . toEqual ( [ WARN_FLAGSET_NOT_CONFIGURED , [ METHOD_NAME , 'set_3' ] ] ) ;
170171
171172 // empty config
172173
173174
174175 // must start with a letter or number
175- expect ( validateFlagSets ( loggerMock , 'test_method' , [ '_set_1' ] , [ ] ) ) . toEqual ( [ ] ) ;
176- expect ( loggerMock . warn . mock . calls [ 8 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ '_set_1' , regexp , '_set_1' ] ] ) ;
176+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ '_set_1' ] , [ ] ) ) . toEqual ( [ ] ) ;
177+ expect ( loggerMock . warn . mock . calls [ 8 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , '_set_1' , regexp , '_set_1' ] ] ) ;
177178
178179 // can contain _a-z0-9
179- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set*1' ] , [ ] ) ) . toEqual ( [ ] ) ;
180- expect ( loggerMock . warn . mock . calls [ 9 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*1' , regexp , 'set*1' ] ] ) ;
180+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set*1' ] , [ ] ) ) . toEqual ( [ ] ) ;
181+ expect ( loggerMock . warn . mock . calls [ 9 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*1' , regexp , 'set*1' ] ] ) ;
181182
182183 // have a max length of 50 characters
183- expect ( validateFlagSets ( loggerMock , 'test_method' , [ longName ] , [ ] ) ) . toEqual ( [ ] ) ;
184- expect ( loggerMock . warn . mock . calls [ 10 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ longName , regexp , longName ] ] ) ;
184+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ longName ] , [ ] ) ) . toEqual ( [ ] ) ;
185+ expect ( loggerMock . warn . mock . calls [ 10 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , longName , regexp , longName ] ] ) ;
185186
186187 // both set names invalid -> empty list & warn
187- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set*1' , 'set*3' ] , [ ] ) ) . toEqual ( [ ] ) ;
188- expect ( loggerMock . warn . mock . calls [ 11 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*1' , regexp , 'set*1' ] ] ) ;
189- expect ( loggerMock . warn . mock . calls [ 12 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*3' , regexp , 'set*3' ] ] ) ;
188+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set*1' , 'set*3' ] , [ ] ) ) . toEqual ( [ ] ) ;
189+ expect ( loggerMock . warn . mock . calls [ 11 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*1' , regexp , 'set*1' ] ] ) ;
190+ expect ( loggerMock . warn . mock . calls [ 12 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*3' , regexp , 'set*3' ] ] ) ;
190191
191192 // only set_1 is valid => [set_1] & warn
192- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_1' , 'set*3' ] , [ ] ) ) . toEqual ( [ 'set_1' ] ) ;
193- expect ( loggerMock . warn . mock . calls [ 13 ] ) . toEqual ( [ WARN_SPLITS_FILTER_INVALID_SET , [ 'set*3' , regexp , 'set*3' ] ] ) ;
193+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_1' , 'set*3' ] , [ ] ) ) . toEqual ( [ 'set_1' ] ) ;
194+ expect ( loggerMock . warn . mock . calls [ 13 ] ) . toEqual ( [ WARN_INVALID_FLAGSET , [ METHOD_NAME , 'set*3' , regexp , 'set*3' ] ] ) ;
194195
195196 // any set should be returned if there isn't flag sets in filter
196- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_1' ] , [ ] ) ) . toEqual ( [ 'set_1' ] ) ;
197- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_1' , 'set_2' ] , [ ] ) ) . toEqual ( [ 'set_1' , 'set_2' ] ) ;
198- expect ( validateFlagSets ( loggerMock , 'test_method' , [ 'set_3' ] , [ ] ) ) . toEqual ( [ 'set_3' ] ) ;
197+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_1' ] , [ ] ) ) . toEqual ( [ 'set_1' ] ) ;
198+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_1' , 'set_2' ] , [ ] ) ) . toEqual ( [ 'set_1' , 'set_2' ] ) ;
199+ expect ( validateFlagSets ( loggerMock , METHOD_NAME , [ 'set_3' ] , [ ] ) ) . toEqual ( [ 'set_3' ] ) ;
199200
200201 } ) ;
201202
0 commit comments