77import static dev .openfeature .contrib .providers .statsig .ContextTransformer .CONTEXT_LOCALE ;
88import static dev .openfeature .contrib .providers .statsig .ContextTransformer .CONTEXT_PRIVATE_ATTRIBUTES ;
99import static dev .openfeature .contrib .providers .statsig .ContextTransformer .CONTEXT_USER_AGENT ;
10- import static org .apache .commons .lang3 .builder .ToStringStyle .NO_CLASS_NAME_STYLE ;
1110import static org .junit .jupiter .api .Assertions .assertEquals ;
1211import static org .mockito .ArgumentMatchers .any ;
1312import static org .mockito .Mockito .doAnswer ;
3130import java .util .HashMap ;
3231import java .util .Map ;
3332import lombok .SneakyThrows ;
34- import org .apache .commons .lang3 .builder .ReflectionToStringBuilder ;
3533import org .junit .jupiter .api .AfterAll ;
3634import org .junit .jupiter .api .BeforeAll ;
3735import org .junit .jupiter .api .Test ;
38- import org .junit .platform .commons .util .ReflectionUtils ;
3936
4037/**
4138 * StatsigProvider test, based on local config file evaluation. Configuration file test by statsig
@@ -64,12 +61,12 @@ class StatsigProviderTest {
6461 static void setUp () {
6562 String sdkKey = "test" ;
6663 StatsigOptions statsigOptions = new StatsigOptions .Builder ()
67- // .setLocalMode(true)
64+ // .setLocalMode(true)
6865 .build ();
6966 StatsigProviderConfig statsigProviderConfig = StatsigProviderConfig .builder ()
70- .sdkKey (sdkKey )
71- .options (statsigOptions )
72- .build ();
67+ .sdkKey (sdkKey )
68+ .options (statsigOptions )
69+ .build ();
7370
7471 statsigProvider = spy (new StatsigProvider (statsigProviderConfig ));
7572 OpenFeatureAPI .getInstance ().setProviderAndWait (statsigProvider );
@@ -79,21 +76,7 @@ static void setUp() {
7976
8077 @ SneakyThrows
8178 private static void buildFlags () {
82-
83- boolean res = statsigProvider .getStatsig ().checkGate (new StatsigUser .Builder ()
84- .setUserID (TARGETING_KEY )
85- .build (), FLAG_NAME );
86-
87- System .out .println ("Initial flag evaluation: " + res );
88-
8979 statsigProvider .getStatsig ().overrideGate (FLAG_NAME , true );
90-
91- res = statsigProvider .getStatsig ().checkGate (new StatsigUser .Builder ()
92- .setUserID (TARGETING_KEY )
93- .build (), FLAG_NAME );
94-
95- System .out .println ("Overridden flag evaluation: " + res );
96-
9780 Map <String , Object > configMap = new HashMap <>();
9881 configMap .put ("boolean" , true );
9982 configMap .put ("alias" , "test" );
@@ -111,14 +94,14 @@ private static void buildFlags() {
11194 when (dynamicConfig .getRuleID ()).thenReturn ("test-rule-id" );
11295
11396 doAnswer (invocation -> {
114- if ("object-config-name"
115- .equals (invocation
116- .getArgument (1 , StatsigProvider .FeatureConfig .class )
117- .getName ())) {
118- return dynamicConfig ;
119- }
120- return invocation .callRealMethod ();
121- })
97+ if ("object-config-name"
98+ .equals (invocation
99+ .getArgument (1 , StatsigProvider .FeatureConfig .class )
100+ .getName ())) {
101+ return dynamicConfig ;
102+ }
103+ return invocation .callRealMethod ();
104+ })
122105 .when (statsigProvider )
123106 .fetchDynamicConfig (any (), any ());
124107
@@ -129,14 +112,14 @@ private static void buildFlags() {
129112 when (layer .getRuleID ()).thenReturn ("test-rule-id" );
130113
131114 doAnswer (invocation -> {
132- if ("layer-name"
133- .equals (invocation
134- .getArgument (1 , StatsigProvider .FeatureConfig .class )
135- .getName ())) {
136- return layer ;
137- }
138- return invocation .callRealMethod ();
139- })
115+ if ("layer-name"
116+ .equals (invocation
117+ .getArgument (1 , StatsigProvider .FeatureConfig .class )
118+ .getName ())) {
119+ return layer ;
120+ }
121+ return invocation .callRealMethod ();
122+ })
140123 .when (statsigProvider )
141124 .fetchLayer (any (), any ());
142125 }
@@ -153,13 +136,12 @@ void getBooleanEvaluation() {
153136 assertEquals (false , flagEvaluationDetails .getValue ());
154137 assertEquals ("ERROR" , flagEvaluationDetails .getReason ());
155138
156- boolean res = statsigProvider . getStatsig (). checkGate ( new StatsigUser . Builder ()
157- .setUserID ( TARGETING_KEY )
158- .build (), FLAG_NAME );
139+ boolean res = statsigProvider
140+ .getStatsig ( )
141+ .checkGate ( new StatsigUser . Builder (). setUserID ( TARGETING_KEY ). build (), FLAG_NAME );
159142
160143 System .out .println ("Overridden flag evaluation: " + res );
161144
162-
163145 MutableContext evaluationContext = new MutableContext ();
164146 evaluationContext .setTargetingKey (TARGETING_KEY );
165147 assertEquals (
@@ -220,7 +202,8 @@ void getObjectConfigEvaluation() {
220202 .getObjectEvaluation ("dummy" , new Value ("fallback" ), evaluationContext )
221203 .getValue ();
222204
223- String expectedObjectEvaluation = "{name=object-config-name, ruleID=test-rule-id, value={value-key=test-value}}" ;
205+ String expectedObjectEvaluation =
206+ "{name=object-config-name, ruleID=test-rule-id, value={value-key=test-value}}" ;
224207 assertEquals (
225208 expectedObjectEvaluation ,
226209 objectEvaluation .asStructure ().asObjectMap ().toString ());
@@ -238,8 +221,9 @@ void getObjectLayerEvaluation() {
238221 .getObjectEvaluation ("dummy" , new Value ("fallback" ), evaluationContext )
239222 .getValue ();
240223
241- String expectedObjectEvaluation = "{groupName=null, name=layer-name, allocatedExperiment=null, ruleID=test-rule-id, "
242- + "value={value-key=test-value}}" ;
224+ String expectedObjectEvaluation =
225+ "{groupName=null, name=layer-name, allocatedExperiment=null, ruleID=test-rule-id, "
226+ + "value={value-key=test-value}}" ;
243227 assertEquals (
244228 expectedObjectEvaluation ,
245229 objectEvaluation .asStructure ().asObjectMap ().toString ());
@@ -429,15 +413,15 @@ void contextTransformTest() {
429413 HashMap <String , String > customMap = new HashMap <>();
430414 customMap .put (customPropertyKey , customPropertyValue );
431415 StatsigUser expectedUser = new StatsigUser .Builder ()
432- .setUserID (evaluationContext .getTargetingKey ())
433- .setEmail (email )
434- .setCountry (country )
435- .setUserAgent (userAgent )
436- .setIp (ip )
437- .setAppVersion (appVersion )
438- .setPrivateAttributes (Collections .singletonMap (CONTEXT_LOCALE , locale ))
439- .setCustomIDs (customMap )
440- .build ();
416+ .setUserID (evaluationContext .getTargetingKey ())
417+ .setEmail (email )
418+ .setCountry (country )
419+ .setUserAgent (userAgent )
420+ .setIp (ip )
421+ .setAppVersion (appVersion )
422+ .setPrivateAttributes (Collections .singletonMap (CONTEXT_LOCALE , locale ))
423+ .setCustomIDs (customMap )
424+ .build ();
441425 StatsigUser transformedUser = ContextTransformer .transform (evaluationContext );
442426
443427 assertEquals (expectedUser .getUserID (), transformedUser .getUserID ());
@@ -446,9 +430,7 @@ void contextTransformTest() {
446430 assertEquals (expectedUser .getUserAgent (), transformedUser .getUserAgent ());
447431 assertEquals (expectedUser .getIp (), transformedUser .getIp ());
448432 assertEquals (expectedUser .getAppVersion (), transformedUser .getAppVersion ());
449- assertEquals (
450- expectedUser .getPrivateAttributes (),
451- transformedUser .getPrivateAttributes ());
433+ assertEquals (expectedUser .getPrivateAttributes (), transformedUser .getPrivateAttributes ());
452434 assertEquals (expectedUser .getCustomIDs (), transformedUser .getCustomIDs ());
453435 }
454436}
0 commit comments