1
1
import { StepDefinitions } from 'jest-cucumber' ;
2
2
import {
3
- EvaluationContext ,
4
3
EvaluationDetails ,
5
4
FlagValue ,
6
5
JsonObject ,
@@ -13,10 +12,8 @@ import { E2E_CLIENT_NAME } from '@openfeature/flagd-core';
13
12
export const flagStepDefinitions : StepDefinitions = ( { given, and, when, then } ) => {
14
13
let flagKey : string ;
15
14
let value : FlagValue ;
16
- let context : EvaluationContext = { } ;
17
15
let details : EvaluationDetails < FlagValue > ;
18
16
let fallback : FlagValue ;
19
- let flagsChanged : string [ ] ;
20
17
21
18
const client = OpenFeature . getClient ( E2E_CLIENT_NAME ) ;
22
19
@@ -26,19 +23,15 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
26
23
} ) ;
27
24
} ) ;
28
25
29
- beforeEach ( ( ) => {
30
- context = { } ;
31
- } ) ;
32
-
33
26
given ( 'a provider is registered' , ( ) => undefined ) ;
34
27
given ( 'a flagd provider is set' , ( ) => undefined ) ;
35
28
36
29
when (
37
30
/ ^ a b o o l e a n f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e f a u l t v a l u e " ( .* ) " $ / ,
38
- async ( key : string , defaultValue : string ) => {
31
+ ( key : string , defaultValue : string ) => {
39
32
flagKey = key ;
40
33
fallback = defaultValue ;
41
- value = await client . getBooleanValue ( key , defaultValue === 'true' ) ;
34
+ value = client . getBooleanValue ( key , defaultValue === 'true' ) ;
42
35
} ,
43
36
) ;
44
37
@@ -48,10 +41,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
48
41
49
42
when (
50
43
/ ^ a s t r i n g f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e f a u l t v a l u e " ( .* ) " $ / ,
51
- async ( key : string , defaultValue : string ) => {
44
+ ( key : string , defaultValue : string ) => {
52
45
flagKey = key ;
53
46
fallback = defaultValue ;
54
- value = await client . getStringValue ( key , defaultValue ) ;
47
+ value = client . getStringValue ( key , defaultValue ) ;
55
48
} ,
56
49
) ;
57
50
@@ -64,7 +57,7 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
64
57
async ( key : string , defaultValue : string ) => {
65
58
flagKey = key ;
66
59
fallback = Number ( defaultValue ) ;
67
- value = await client . getNumberValue ( key , Number . parseInt ( defaultValue ) ) ;
60
+ value = client . getNumberValue ( key , Number . parseInt ( defaultValue ) ) ;
68
61
} ,
69
62
) ;
70
63
@@ -77,7 +70,7 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
77
70
async ( key : string , defaultValue : string ) => {
78
71
flagKey = key ;
79
72
fallback = Number ( defaultValue ) ;
80
- value = await client . getNumberValue ( key , Number . parseFloat ( defaultValue ) ) ;
73
+ value = client . getNumberValue ( key , Number . parseFloat ( defaultValue ) ) ;
81
74
} ,
82
75
) ;
83
76
@@ -89,7 +82,7 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
89
82
const defaultValue = { } ;
90
83
flagKey = key ;
91
84
fallback = '' ;
92
- value = await client . getObjectValue ( key , defaultValue ) ;
85
+ value = client . getObjectValue ( key , defaultValue ) ;
93
86
} ) ;
94
87
95
88
then (
@@ -107,7 +100,7 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
107
100
async ( key : string , defaultValue : string ) => {
108
101
flagKey = key ;
109
102
fallback = defaultValue ;
110
- details = await client . getBooleanDetails ( key , defaultValue === 'true' ) ;
103
+ details = client . getBooleanDetails ( key , defaultValue === 'true' ) ;
111
104
} ,
112
105
) ;
113
106
@@ -123,10 +116,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
123
116
124
117
when (
125
118
/ ^ a s t r i n g f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e t a i l s a n d d e f a u l t v a l u e " ( .* ) " $ / ,
126
- async ( key : string , defaultValue : string ) => {
119
+ ( key : string , defaultValue : string ) => {
127
120
flagKey = key ;
128
121
fallback = defaultValue ;
129
- details = await client . getStringDetails ( key , defaultValue ) ;
122
+ details = client . getStringDetails ( key , defaultValue ) ;
130
123
} ,
131
124
) ;
132
125
@@ -142,10 +135,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
142
135
143
136
when (
144
137
/ ^ a n i n t e g e r f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e t a i l s a n d d e f a u l t v a l u e ( \d + ) $ / ,
145
- async ( key : string , defaultValue : string ) => {
138
+ ( key : string , defaultValue : string ) => {
146
139
flagKey = key ;
147
140
fallback = defaultValue ;
148
- details = await client . getNumberDetails ( key , Number . parseInt ( defaultValue ) ) ;
141
+ details = client . getNumberDetails ( key , Number . parseInt ( defaultValue ) ) ;
149
142
} ,
150
143
) ;
151
144
@@ -161,10 +154,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
161
154
162
155
when (
163
156
/ ^ a f l o a t f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e t a i l s a n d d e f a u l t v a l u e ( \d + \. ? \d * ) $ / ,
164
- async ( key : string , defaultValue : string ) => {
157
+ ( key : string , defaultValue : string ) => {
165
158
flagKey = key ;
166
159
fallback = defaultValue ;
167
- details = await client . getNumberDetails ( key , Number . parseFloat ( defaultValue ) ) ;
160
+ details = client . getNumberDetails ( key , Number . parseFloat ( defaultValue ) ) ;
168
161
} ,
169
162
) ;
170
163
@@ -178,10 +171,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
178
171
} ,
179
172
) ;
180
173
181
- when ( / ^ a n o b j e c t f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e t a i l s a n d a n u l l d e f a u l t v a l u e $ / , async ( key : string ) => {
174
+ when ( / ^ a n o b j e c t f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e t a i l s a n d a n u l l d e f a u l t v a l u e $ / , ( key : string ) => {
182
175
flagKey = key ;
183
176
fallback = { } ;
184
- details = await client . getObjectDetails ( key , { } ) ;
177
+ details = client . getObjectDetails ( key , { } ) ;
185
178
} ) ;
186
179
187
180
then (
@@ -211,10 +204,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
211
204
212
205
when (
213
206
/ ^ a n o n - e x i s t e n t s t r i n g f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d w i t h d e t a i l s a n d a d e f a u l t v a l u e " ( .* ) " $ / ,
214
- async ( key : string , defaultValue : string ) => {
207
+ ( key : string , defaultValue : string ) => {
215
208
flagKey = key ;
216
209
fallback = defaultValue ;
217
- details = await client . getStringDetails ( flagKey , defaultValue ) ;
210
+ details = client . getStringDetails ( flagKey , defaultValue ) ;
218
211
} ,
219
212
) ;
220
213
@@ -234,10 +227,10 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
234
227
235
228
when (
236
229
/ ^ a s t r i n g f l a g w i t h k e y " ( .* ) " i s e v a l u a t e d a s a n i n t e g e r , w i t h d e t a i l s a n d a d e f a u l t v a l u e ( \d + ) $ / ,
237
- async ( key : string , defaultValue : string ) => {
230
+ ( key : string , defaultValue : string ) => {
238
231
flagKey = key ;
239
232
fallback = Number . parseInt ( defaultValue ) ;
240
- details = await client . getNumberDetails ( flagKey , Number . parseInt ( defaultValue ) ) ;
233
+ details = client . getNumberDetails ( flagKey , Number . parseInt ( defaultValue ) ) ;
241
234
} ,
242
235
) ;
243
236
@@ -266,7 +259,7 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
266
259
} ) ;
267
260
268
261
when ( 'a PROVIDER_CONFIGURATION_CHANGED handler is added' , ( ) => {
269
- client . addHandler ( ProviderEvents . ConfigurationChanged , async ( details ) => {
262
+ client . addHandler ( ProviderEvents . ConfigurationChanged , async ( ) => {
270
263
// file writes are not atomic, so we get a few events in quick succession from the testbed
271
264
// some will not contain changes, this tolerates that; at least 1 should have our change
272
265
@@ -290,7 +283,7 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
290
283
expect ( ran ) . toBeTruthy ( ) ;
291
284
} ) ;
292
285
293
- and ( / ^ t h e e v e n t d e t a i l s m u s t i n d i c a t e " ( .* ) " w a s a l t e r e d $ / , ( flagName ) => {
286
+ and ( / ^ t h e e v e n t d e t a i l s m u s t i n d i c a t e " ( .* ) " w a s a l t e r e d $ / , ( ) => {
294
287
// TODO: enable this for testing of issue
295
288
//expect(flagsChanged).toContain(flagName);
296
289
} ) ;
@@ -303,9 +296,9 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
303
296
} ,
304
297
) ;
305
298
306
- then ( / ^ t h e r e s o l v e d b o o l e a n z e r o - v a l u e s h o u l d b e " ( .* ) " $ / , async ( expectedVal : string ) => {
299
+ then ( / ^ t h e r e s o l v e d b o o l e a n z e r o - v a l u e s h o u l d b e " ( .* ) " $ / , ( expectedVal : string ) => {
307
300
const expectedValue = expectedVal === 'true' ;
308
- const value = await client . getBooleanValue ( flagKey , fallback as boolean ) ;
301
+ const value = client . getBooleanValue ( flagKey , fallback as boolean ) ;
309
302
expect ( value ) . toEqual ( expectedValue ) ;
310
303
} ) ;
311
304
@@ -314,8 +307,8 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
314
307
fallback = defaultVal ;
315
308
} ) ;
316
309
317
- then ( 'the resolved string zero-value should be ""' , async ( ) => {
318
- const value = await client . getStringValue ( flagKey , fallback as string ) ;
310
+ then ( 'the resolved string zero-value should be ""' , ( ) => {
311
+ const value = client . getStringValue ( flagKey , fallback as string ) ;
319
312
expect ( value ) . toEqual ( '' ) ;
320
313
} ) ;
321
314
@@ -324,9 +317,9 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
324
317
fallback = defaultVal ;
325
318
} ) ;
326
319
327
- then ( / ^ t h e r e s o l v e d i n t e g e r z e r o - v a l u e s h o u l d b e ( \d + ) $ / , async ( expectedValueString ) => {
320
+ then ( / ^ t h e r e s o l v e d i n t e g e r z e r o - v a l u e s h o u l d b e ( \d + ) $ / , ( expectedValueString ) => {
328
321
const expectedValue = Number . parseInt ( expectedValueString ) ;
329
- const value = await client . getNumberValue ( flagKey , fallback as number ) ;
322
+ const value = client . getNumberValue ( flagKey , fallback as number ) ;
330
323
expect ( value ) . toEqual ( expectedValue ) ;
331
324
} ) ;
332
325
@@ -338,9 +331,9 @@ export const flagStepDefinitions: StepDefinitions = ({ given, and, when, then })
338
331
} ,
339
332
) ;
340
333
341
- then ( / ^ t h e r e s o l v e d f l o a t z e r o - v a l u e s h o u l d b e ( \d + \. \d + ) $ / , async ( expectedValueString ) => {
334
+ then ( / ^ t h e r e s o l v e d f l o a t z e r o - v a l u e s h o u l d b e ( \d + \. \d + ) $ / , ( expectedValueString ) => {
342
335
const expectedValue = Number . parseFloat ( expectedValueString ) ;
343
- const value = await client . getNumberValue ( flagKey , fallback as number ) ;
336
+ const value = client . getNumberValue ( flagKey , fallback as number ) ;
344
337
expect ( value ) . toEqual ( expectedValue ) ;
345
338
} ) ;
346
339
0 commit comments