@@ -40,7 +40,10 @@ void shouldMergeEvaluationContextsOnBeforeHooksCorrectly() {
40
40
HookSupport hookSupport = new HookSupport ();
41
41
42
42
EvaluationContext result = hookSupport .beforeHooks (
43
- FlagValueType .STRING , hookContext , hookSupport .getHookDataPairs (Arrays .asList (hook1 , hook2 )), Collections .emptyMap ());
43
+ FlagValueType .STRING ,
44
+ hookContext ,
45
+ hookSupport .getHookDataPairs (Arrays .asList (hook1 , hook2 )),
46
+ Collections .emptyMap ());
44
47
45
48
assertThat (result .getValue ("bla" ).asString ()).isEqualTo ("blubber" );
46
49
assertThat (result .getValue ("foo" ).asString ()).isEqualTo ("bar" );
@@ -65,8 +68,7 @@ void shouldAlwaysCallGenericHook(FlagValueType flagValueType) {
65
68
.providerMetadata (() -> "provider" )
66
69
.build ();
67
70
68
- hookSupport .beforeHooks (
69
- flagValueType , hookContext , hookDataPairs , Collections .emptyMap ());
71
+ hookSupport .beforeHooks (flagValueType , hookContext , hookDataPairs , Collections .emptyMap ());
70
72
hookSupport .afterHooks (
71
73
flagValueType ,
72
74
hookContext ,
@@ -79,12 +81,7 @@ void shouldAlwaysCallGenericHook(FlagValueType flagValueType) {
79
81
FlagEvaluationDetails .builder ().build (),
80
82
hookDataPairs ,
81
83
Collections .emptyMap ());
82
- hookSupport .errorHooks (
83
- flagValueType ,
84
- hookContext ,
85
- expectedException ,
86
- hookDataPairs ,
87
- Collections .emptyMap ());
84
+ hookSupport .errorHooks (flagValueType , hookContext , expectedException , hookDataPairs , Collections .emptyMap ());
88
85
89
86
verify (genericHook ).before (any (), any ());
90
87
verify (genericHook ).after (any (), any (), any ());
@@ -102,7 +99,7 @@ void shouldPassDataAcrossStages(FlagValueType flagValueType) {
102
99
TestHookWithData testHook = new TestHookWithData ("test-key" , "value" );
103
100
var pairs = hookSupport .getHookDataPairs (List .of (testHook ));
104
101
105
- callAllHooks (flagValueType , hookSupport , hookContext , pairs );
102
+ callAllHooks (flagValueType , hookSupport , hookContext , testHook );
106
103
107
104
assertHookData (testHook , "value" );
108
105
}
@@ -135,13 +132,12 @@ void shouldIsolateDataBetweenSameHooks(FlagValueType flagValueType) {
135
132
TestHookWithData testHook = new TestHookWithData ("test-key" , "value-1" );
136
133
137
134
// run hooks first time
138
- var pairs = hookSupport .getHookDataPairs (List .of (testHook ));
139
- callAllHooks (flagValueType , hookSupport , hookContext , pairs );
135
+ callAllHooks (flagValueType , hookSupport , hookContext , testHook );
140
136
assertHookData (testHook , "value-1" );
141
137
142
138
// re-run with different value, will throw if HookData contains already data
143
139
testHook .value = "value-2" ;
144
- callAllHooks (flagValueType , hookSupport , hookContext , pairs );
140
+ callAllHooks (flagValueType , hookSupport , hookContext , testHook );
145
141
146
142
assertHookData (testHook , "value-2" );
147
143
}
@@ -166,15 +162,28 @@ private static void assertHookData(TestHookWithData testHook1, String expected)
166
162
assertThat (testHook1 .onErrorValue ).isEqualTo (expected );
167
163
}
168
164
169
- private static void callAllHooks (FlagValueType flagValueType , HookSupport hookSupport , HookContext <Object > hookContext ,
170
- List <Pair <Hook , HookData >> pairs ) {
165
+ private static void callAllHooks (
166
+ FlagValueType flagValueType ,
167
+ HookSupport hookSupport ,
168
+ HookContext <Object > hookContext ,
169
+ TestHookWithData testHook ) {
170
+ var pairs = hookSupport .getHookDataPairs (List .of (testHook ));
171
+ callAllHooks (flagValueType , hookSupport , hookContext , pairs );
172
+ }
173
+
174
+ private static void callAllHooks (
175
+ FlagValueType flagValueType ,
176
+ HookSupport hookSupport ,
177
+ HookContext <Object > hookContext ,
178
+ List <Pair <Hook , HookData >> pairs ) {
171
179
hookSupport .beforeHooks (flagValueType , hookContext , pairs , Collections .emptyMap ());
172
- hookSupport .afterHooks (flagValueType , hookContext , new FlagEvaluationDetails <>(), pairs , Collections .emptyMap ());
180
+ hookSupport .afterHooks (
181
+ flagValueType , hookContext , new FlagEvaluationDetails <>(), pairs , Collections .emptyMap ());
173
182
hookSupport .errorHooks (flagValueType , hookContext , new Exception (), pairs , Collections .emptyMap ());
174
- hookSupport .afterAllHooks (flagValueType , hookContext , new FlagEvaluationDetails <>(), pairs , Collections .emptyMap ());
183
+ hookSupport .afterAllHooks (
184
+ flagValueType , hookContext , new FlagEvaluationDetails <>(), pairs , Collections .emptyMap ());
175
185
}
176
186
177
-
178
187
private Object createDefaultValue (FlagValueType flagValueType ) {
179
188
switch (flagValueType ) {
180
189
case INTEGER :
@@ -239,6 +248,5 @@ public void error(HookContext ctx, Exception error, Map hints) {
239
248
public void finallyAfter (HookContext ctx , FlagEvaluationDetails details , Map hints ) {
240
249
onFinallyAfterValue = ctx .getHookData ().get (key );
241
250
}
242
-
243
251
}
244
252
}
0 commit comments