Skip to content

Commit 217e733

Browse files
committed
fixup: flaky tests
Signed-off-by: Todd Baert <[email protected]>
1 parent f35c909 commit 217e733

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

src/main/java/dev/openfeature/sdk/OpenFeatureAPI.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,8 @@ void removeHandler(String clientName, ProviderEvent event, Consumer<EventDetails
305305
void addHandler(String clientName, ProviderEvent event, Consumer<EventDetails> handler) {
306306
try (AutoCloseableLock __ = lock.writeLockAutoCloseable()) {
307307
// if the provider is in the state associated with event, run immediately
308-
if (this.providerRepository.getProvider(clientName).getState().matchesEvent(event)) {
308+
if (Optional.ofNullable(this.providerRepository.getProvider(clientName).getState())
309+
.orElse(ProviderState.READY).matchesEvent(event)) {
309310
eventSupport.runHandler(handler, EventDetails.builder().clientName(clientName).build());
310311
}
311312
eventSupport.addClientHandler(clientName, event, handler);

src/test/java/dev/openfeature/sdk/EventsTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
class EventsTest {
2626

27-
private static final int TIMEOUT = 200;
27+
private static final int TIMEOUT = 300;
2828
private static final int INIT_DELAY = TIMEOUT / 2;
2929

3030
@AfterAll

src/test/java/dev/openfeature/sdk/LockingTest.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,11 @@
1212
import org.junit.jupiter.api.BeforeEach;
1313
import org.junit.jupiter.api.Nested;
1414
import org.junit.jupiter.api.Test;
15+
import org.junit.jupiter.api.parallel.Isolated;
1516

1617
import dev.openfeature.sdk.internal.AutoCloseableReentrantReadWriteLock;
1718

19+
@Isolated()
1820
class LockingTest {
1921

2022
private static OpenFeatureAPI api;
@@ -26,11 +28,12 @@ class LockingTest {
2628
@BeforeAll
2729
static void beforeAll() {
2830
api = OpenFeatureAPI.getInstance();
31+
OpenFeatureAPI.getInstance().setProvider("LockingTest", new NoOpProvider());
2932
}
3033

3134
@BeforeEach
3235
void beforeEach() {
33-
client = (OpenFeatureClient) api.getClient();
36+
client = (OpenFeatureClient) api.getClient("LockingTest");
3437

3538
apiLock = setupLock(apiLock, mockInnerReadLock(), mockInnerWriteLock());
3639
OpenFeatureAPI.lock = apiLock;

0 commit comments

Comments
 (0)