Skip to content

Commit 8f0105b

Browse files
committed
Add @deprecated and test deprecated method
1 parent 876d17f commit 8f0105b

File tree

2 files changed

+20
-8
lines changed

2 files changed

+20
-8
lines changed

powertools-metrics/src/main/java/software/amazon/lambda/powertools/metrics/MetricsUtils.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ public static void withMetricsLogger(final Consumer<MetricsLogger> logger) {
140140
*
141141
* @deprecated use {@link MetricsUtils#withMetricsLogger} instead
142142
*/
143+
@Deprecated
143144
public static void withMetricLogger(final Consumer<MetricsLogger> logger) {
144145
withMetricsLogger(logger);
145146
}

powertools-metrics/src/test/java/software/amazon/lambda/powertools/metrics/MetricsLoggerTest.java

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.io.ByteArrayOutputStream;
44
import java.io.PrintStream;
55
import java.util.Map;
6+
import java.util.function.Consumer;
67

78
import com.fasterxml.jackson.core.JsonProcessingException;
89
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -12,6 +13,7 @@
1213
import org.junit.jupiter.api.Test;
1314
import org.mockito.MockedStatic;
1415
import software.amazon.cloudwatchlogs.emf.config.SystemWrapper;
16+
import software.amazon.cloudwatchlogs.emf.logger.MetricsLogger;
1517
import software.amazon.cloudwatchlogs.emf.model.DimensionSet;
1618
import software.amazon.cloudwatchlogs.emf.model.Unit;
1719

@@ -124,13 +126,29 @@ void singleMetricsCaptureUtilityWithDefaultNameSpace() {
124126

125127
@Test
126128
void metricsLoggerCaptureUtilityWithDefaultNameSpace() {
129+
testWithNewLogger(MetricsUtils::withMetricsLogger);
130+
}
131+
132+
@Test
133+
void deprecatedMetricLoggerCaptureUtilityWithDefaultNameSpace() {
134+
testWithNewLogger(MetricsUtils::withMetricLogger);
135+
}
136+
137+
@Test
138+
void shouldThrowExceptionWhenDefaultDimensionIsNull() {
139+
assertThatNullPointerException()
140+
.isThrownBy(() -> MetricsUtils.defaultDimensionSet(null))
141+
.withMessage("Null dimension set not allowed");
142+
}
143+
144+
private void testWithNewLogger(Consumer<Consumer<MetricsLogger>> methodToTest) {
127145
try (MockedStatic<SystemWrapper> mocked = mockStatic(SystemWrapper.class);
128146
MockedStatic<software.amazon.lambda.powertools.core.internal.SystemWrapper> internalWrapper = mockStatic(software.amazon.lambda.powertools.core.internal.SystemWrapper.class)) {
129147
mocked.when(() -> SystemWrapper.getenv("AWS_EMF_ENVIRONMENT")).thenReturn("Lambda");
130148
mocked.when(() -> SystemWrapper.getenv("POWERTOOLS_METRICS_NAMESPACE")).thenReturn("GlobalName");
131149
internalWrapper.when(() -> getenv("_X_AMZN_TRACE_ID")).thenReturn("Root=1-5759e988-bd862e3fe1be46a994272793;Parent=53995c3f42cd8ad8;Sampled=1\"");
132150

133-
MetricsUtils.withMetricsLogger(metricsLogger -> {
151+
methodToTest.accept(metricsLogger -> {
134152
metricsLogger.setDimensions(DimensionSet.of("Dimension1", "Value1"));
135153
metricsLogger.putMetric("Metric1", 1, Unit.COUNT);
136154
});
@@ -154,13 +172,6 @@ void metricsLoggerCaptureUtilityWithDefaultNameSpace() {
154172
}
155173
}
156174

157-
@Test
158-
void shouldThrowExceptionWhenDefaultDimensionIsNull() {
159-
assertThatNullPointerException()
160-
.isThrownBy(() -> MetricsUtils.defaultDimensionSet(null))
161-
.withMessage("Null dimension set not allowed");
162-
}
163-
164175
private Map<String, Object> readAsJson(String s) {
165176
try {
166177
return mapper.readValue(s, Map.class);

0 commit comments

Comments
 (0)