From ee09adf00aadfc93ad1f7992bd358d3d935f9040 Mon Sep 17 00:00:00 2001 From: Tobias Ibounig Date: Fri, 19 Jun 2026 13:32:36 +0200 Subject: [PATCH] perf: return ImmutableContext.EMPTY from NoOpTransactionContextPropagator Signed-off-by: Tobias Ibounig --- .../openfeature/sdk/NoOpTransactionContextPropagator.java | 2 +- .../sdk/NoOpTransactionContextPropagatorTest.java | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/dev/openfeature/sdk/NoOpTransactionContextPropagator.java b/src/main/java/dev/openfeature/sdk/NoOpTransactionContextPropagator.java index f0949b79c..599ff6951 100644 --- a/src/main/java/dev/openfeature/sdk/NoOpTransactionContextPropagator.java +++ b/src/main/java/dev/openfeature/sdk/NoOpTransactionContextPropagator.java @@ -12,7 +12,7 @@ public class NoOpTransactionContextPropagator implements TransactionContextPropa */ @Override public EvaluationContext getTransactionContext() { - return new ImmutableContext(); + return ImmutableContext.EMPTY; } /** diff --git a/src/test/java/dev/openfeature/sdk/NoOpTransactionContextPropagatorTest.java b/src/test/java/dev/openfeature/sdk/NoOpTransactionContextPropagatorTest.java index d824a5a1a..0187f4543 100644 --- a/src/test/java/dev/openfeature/sdk/NoOpTransactionContextPropagatorTest.java +++ b/src/test/java/dev/openfeature/sdk/NoOpTransactionContextPropagatorTest.java @@ -1,5 +1,6 @@ package dev.openfeature.sdk; +import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.*; import java.util.HashMap; @@ -16,6 +17,11 @@ public void emptyTransactionContext() { assertTrue(result.asMap().isEmpty()); } + @Test + public void getTransactionContextReturnsEmptySingleton() { + assertThat(contextPropagator.getTransactionContext()).isSameAs(ImmutableContext.EMPTY); + } + @Test public void setTransactionContext() { Map transactionAttrs = new HashMap<>();