@@ -41,7 +41,17 @@ void shouldNotThrowExceptionIfHookHasDifferentTypeArgumentThanHookContext() {
4141 when (api .getProvider (any ())).thenReturn (provider );
4242 when (api .getHooks ()).thenReturn (Arrays .asList (mockBooleanHook (), mockStringHook ()));
4343
44- OpenFeatureClient client = new OpenFeatureClient (() -> provider , api , "name" , "version" );
44+ OpenFeatureClient client = new OpenFeatureClient (new ProviderAccessor () {
45+ @ Override
46+ public FeatureProvider getProvider () {
47+ return provider ;
48+ }
49+
50+ @ Override
51+ public ProviderState getProviderState () {
52+ return ProviderState .READY ;
53+ }
54+ }, api , "name" , "version" );
4555
4656 FlagEvaluationDetails <Boolean > actual = client .getBooleanDetails ("feature key" , Boolean .FALSE );
4757
@@ -71,7 +81,17 @@ void mergeContextTest() {
7181 when (api .getProvider (any ())).thenReturn (mockProvider );
7282
7383
74- OpenFeatureClient client = new OpenFeatureClient (() -> mockProvider , api , "name" , "version" );
84+ OpenFeatureClient client = new OpenFeatureClient (new ProviderAccessor () {
85+ @ Override
86+ public FeatureProvider getProvider () {
87+ return mockProvider ;
88+ }
89+
90+ @ Override
91+ public ProviderState getProviderState () {
92+ return ProviderState .READY ;
93+ }
94+ }, api , "name" , "version" );
7595 client .setEvaluationContext (ctx );
7696
7797 FlagEvaluationDetails <Boolean > result = client .getBooleanDetails (flag , defaultValue );
@@ -83,7 +103,17 @@ void mergeContextTest() {
83103 @ DisplayName ("addHooks should allow chaining by returning the same client instance" )
84104 void addHooksShouldAllowChaining () {
85105 OpenFeatureAPI api = mock (OpenFeatureAPI .class );
86- OpenFeatureClient client = new OpenFeatureClient (() -> null , api , "name" , "version" );
106+ OpenFeatureClient client = new OpenFeatureClient (new ProviderAccessor () {
107+ @ Override
108+ public FeatureProvider getProvider () {
109+ return null ;
110+ }
111+
112+ @ Override
113+ public ProviderState getProviderState () {
114+ return ProviderState .READY ;
115+ }
116+ }, api , "name" , "version" );
87117 Hook <?> hook1 = Mockito .mock (Hook .class );
88118 Hook <?> hook2 = Mockito .mock (Hook .class );
89119
@@ -95,7 +125,17 @@ void addHooksShouldAllowChaining() {
95125 @ DisplayName ("setEvaluationContext should allow chaining by returning the same client instance" )
96126 void setEvaluationContextShouldAllowChaining () {
97127 OpenFeatureAPI api = mock (OpenFeatureAPI .class );
98- OpenFeatureClient client = new OpenFeatureClient (() -> null , api , "name" , "version" );
128+ OpenFeatureClient client = new OpenFeatureClient (new ProviderAccessor () {
129+ @ Override
130+ public FeatureProvider getProvider () {
131+ return null ;
132+ }
133+
134+ @ Override
135+ public ProviderState getProviderState () {
136+ return ProviderState .READY ;
137+ }
138+ }, api , "name" , "version" );
99139 EvaluationContext ctx = new ImmutableContext ("targeting key" , new HashMap <>());
100140
101141 OpenFeatureClient result = client .setEvaluationContext (ctx );
@@ -107,7 +147,17 @@ void setEvaluationContextShouldAllowChaining() {
107147 void shouldNotCallEvaluationMethodsWhenProviderIsInFatalErrorState () {
108148 MockProvider mockProvider = new MockProvider (ProviderState .FATAL );
109149 OpenFeatureAPI api = mock (OpenFeatureAPI .class );
110- OpenFeatureClient client = new OpenFeatureClient (() -> mockProvider , api , "name" , "version" );
150+ OpenFeatureClient client = new OpenFeatureClient (new ProviderAccessor () {
151+ @ Override
152+ public FeatureProvider getProvider () {
153+ return mockProvider ;
154+ }
155+
156+ @ Override
157+ public ProviderState getProviderState () {
158+ return ProviderState .FATAL ;
159+ }
160+ }, api , "name" , "version" );
111161 FlagEvaluationDetails <Boolean > details = client .getBooleanDetails ("key" , true );
112162
113163 assertThat (mockProvider .isEvaluationCalled ()).isFalse ();
@@ -119,7 +169,17 @@ void shouldNotCallEvaluationMethodsWhenProviderIsInFatalErrorState() {
119169 void shouldNotCallEvaluationMethodsWhenProviderIsInNotReadyState () {
120170 MockProvider mockProvider = new MockProvider (ProviderState .NOT_READY );
121171 OpenFeatureAPI api = mock (OpenFeatureAPI .class );
122- OpenFeatureClient client = new OpenFeatureClient (() -> mockProvider , api , "name" , "version" );
172+ OpenFeatureClient client = new OpenFeatureClient (new ProviderAccessor () {
173+ @ Override
174+ public FeatureProvider getProvider () {
175+ return mockProvider ;
176+ }
177+
178+ @ Override
179+ public ProviderState getProviderState () {
180+ return ProviderState .NOT_READY ;
181+ }
182+ }, api , "name" , "version" );
123183 FlagEvaluationDetails <Boolean > details = client .getBooleanDetails ("key" , true );
124184
125185 assertThat (mockProvider .isEvaluationCalled ()).isFalse ();
0 commit comments