|
17 | 17 | import static org.assertj.core.api.Assertions.assertThat;
|
18 | 18 | import static org.junit.jupiter.api.Assertions.assertNotNull;
|
19 | 19 | import static org.mockito.Mockito.mock;
|
20 |
| -import static org.mockito.Mockito.mockStatic; |
21 | 20 | import static org.mockito.Mockito.when;
|
22 |
| -import static software.amazon.lambda.powertools.common.internal.SystemWrapper.getenv; |
23 | 21 |
|
24 | 22 | import com.amazonaws.services.lambda.runtime.Context;
|
25 | 23 | import com.amazonaws.services.lambda.runtime.RequestHandler;
|
|
30 | 28 | import org.aspectj.lang.ProceedingJoinPoint;
|
31 | 29 | import org.aspectj.lang.Signature;
|
32 | 30 | import org.junit.jupiter.api.Test;
|
33 |
| -import org.mockito.MockedStatic; |
| 31 | +import org.junitpioneer.jupiter.ClearEnvironmentVariable; |
| 32 | +import org.junitpioneer.jupiter.SetEnvironmentVariable; |
34 | 33 |
|
35 | 34 | class LambdaHandlerProcessorTest {
|
36 | 35 |
|
@@ -139,27 +138,23 @@ void placedOnStreamHandler_shouldInvalidateOnTypeOfArgs_invalidContextArg() {
|
139 | 138 | }
|
140 | 139 |
|
141 | 140 | @Test
|
| 141 | + @SetEnvironmentVariable(key = LambdaConstants.X_AMZN_TRACE_ID, value = "Root=1-5759e988-bd862e3fe1be46a994272793;Parent=53995c3f42cd8ad8;Sampled=1\"") |
142 | 142 | void getXrayTraceId_present() {
|
143 | 143 | String traceID = "Root=1-5759e988-bd862e3fe1be46a994272793;Parent=53995c3f42cd8ad8;Sampled=1\"";
|
144 |
| - try (MockedStatic<SystemWrapper> mockedSystemWrapper = mockStatic(SystemWrapper.class)) { |
145 |
| - mockedSystemWrapper.when(() -> getenv(LambdaConstants.X_AMZN_TRACE_ID)).thenReturn(traceID); |
146 | 144 |
|
147 |
| - Optional xRayTraceId = LambdaHandlerProcessor.getXrayTraceId(); |
| 145 | + Optional xRayTraceId = LambdaHandlerProcessor.getXrayTraceId(); |
148 | 146 |
|
149 |
| - assertThat(xRayTraceId.isPresent()).isTrue(); |
150 |
| - assertThat(traceID.split(";")[0].replace(LambdaConstants.ROOT_EQUALS, "")).isEqualTo(xRayTraceId.get()); |
151 |
| - } |
| 147 | + assertThat(xRayTraceId.isPresent()).isTrue(); |
| 148 | + assertThat(traceID.split(";")[0].replace(LambdaConstants.ROOT_EQUALS, "")).isEqualTo(xRayTraceId.get()); |
152 | 149 | }
|
153 | 150 |
|
154 | 151 | @Test
|
| 152 | + @ClearEnvironmentVariable(key = LambdaConstants.X_AMZN_TRACE_ID) |
155 | 153 | void getXrayTraceId_notPresent() {
|
156 |
| - try (MockedStatic<SystemWrapper> mockedSystemWrapper = mockStatic(SystemWrapper.class)) { |
157 |
| - mockedSystemWrapper.when(() -> getenv(LambdaConstants.X_AMZN_TRACE_ID)).thenReturn(null); |
158 | 154 |
|
159 |
| - boolean isXRayTraceIdPresent = LambdaHandlerProcessor.getXrayTraceId().isPresent(); |
| 155 | + boolean isXRayTraceIdPresent = LambdaHandlerProcessor.getXrayTraceId().isPresent(); |
160 | 156 |
|
161 |
| - assertThat(isXRayTraceIdPresent).isFalse(); |
162 |
| - } |
| 157 | + assertThat(isXRayTraceIdPresent).isFalse(); |
163 | 158 | }
|
164 | 159 |
|
165 | 160 | @Test
|
@@ -209,37 +204,28 @@ void isColdStart_coldStartDone() {
|
209 | 204 | }
|
210 | 205 |
|
211 | 206 | @Test
|
| 207 | + @SetEnvironmentVariable(key = LambdaConstants.AWS_SAM_LOCAL, value = "true") |
212 | 208 | void isSamLocal() {
|
213 |
| - try (MockedStatic<SystemWrapper> mockedSystemWrapper = mockStatic(SystemWrapper.class)) { |
214 |
| - mockedSystemWrapper.when(() -> getenv(LambdaConstants.AWS_SAM_LOCAL)).thenReturn("true"); |
215 | 209 |
|
216 |
| - boolean isSamLocal = LambdaHandlerProcessor.isSamLocal(); |
| 210 | + boolean isSamLocal = LambdaHandlerProcessor.isSamLocal(); |
217 | 211 |
|
218 |
| - assertThat(isSamLocal).isTrue(); |
219 |
| - } |
| 212 | + assertThat(isSamLocal).isTrue(); |
220 | 213 | }
|
221 | 214 |
|
222 | 215 | @Test
|
| 216 | + @SetEnvironmentVariable(key = LambdaConstants.POWERTOOLS_SERVICE_NAME, value = "MyService") |
223 | 217 | void serviceName() {
|
224 |
| - try (MockedStatic<SystemWrapper> mockedSystemWrapper = mockStatic(SystemWrapper.class)) { |
225 |
| - String expectedServiceName = "MyService"; |
226 |
| - mockedSystemWrapper.when(() -> getenv(LambdaConstants.POWERTOOLS_SERVICE_NAME)) |
227 |
| - .thenReturn(expectedServiceName); |
| 218 | + String expectedServiceName = "MyService"; |
| 219 | + String actualServiceName = LambdaHandlerProcessor.serviceName(); |
228 | 220 |
|
229 |
| - String actualServiceName = LambdaHandlerProcessor.serviceName(); |
230 |
| - |
231 |
| - assertThat(actualServiceName).isEqualTo(expectedServiceName); |
232 |
| - } |
| 221 | + assertThat(actualServiceName).isEqualTo(expectedServiceName); |
233 | 222 | }
|
234 | 223 |
|
235 | 224 | @Test
|
| 225 | + @ClearEnvironmentVariable(key = LambdaConstants.POWERTOOLS_SERVICE_NAME) |
236 | 226 | void serviceName_Undefined() {
|
237 | 227 | LambdaHandlerProcessor.resetServiceName();
|
238 |
| - try (MockedStatic<SystemWrapper> mockedSystemWrapper = mockStatic(SystemWrapper.class)) { |
239 |
| - mockedSystemWrapper.when(() -> getenv(LambdaConstants.POWERTOOLS_SERVICE_NAME)).thenReturn(null); |
240 |
| - |
241 |
| - assertThat(LambdaHandlerProcessor.serviceName()).isEqualTo(LambdaConstants.SERVICE_UNDEFINED); |
242 |
| - } |
| 228 | + assertThat(LambdaHandlerProcessor.serviceName()).isEqualTo(LambdaConstants.SERVICE_UNDEFINED); |
243 | 229 | }
|
244 | 230 |
|
245 | 231 | private ProceedingJoinPoint mockRequestHandlerPjp(Class handlerClass, Object[] handlerArgs) {
|
|
0 commit comments