Hello :)
I`m using pitest ("1.15.0") with gradle (distributionUrl=https\://
services.gradle.org/distributions/gradle-8.6-rc-1-bin.zip)
and faced with strange issue.
I have handler with single method:
public InputEvent handleRequest(final InputEvent inputEvent, final Context context) {
final var region = System.getenv(REGION_VAR_NAME);
final var request = <>;
try (final var snsClient = SnsClient.builder()
.region(new SystemSettingsRegionProvider().getRegion())
.credentialsProvider(EnvironmentVariableCredentialsProvider.create())
.build()
) {
snsClient.publish(request);
} return inputEvent;
}
and I have test which covered returned value:
@Test
void shouldSendNotification() {
final var inputEvent = fromJson("input_event.json", InputEvent.class);
final var snsClientStaticMock = mockStatic(SnsClient.class);
snsClientStaticMock.when(SnsClient::builder).thenReturn(snsClientBuilder);
when(snsClientBuilder.region(any(Region.class))).thenReturn(snsClientBuilder);
when(snsClientBuilder.credentialsProvider(any(EnvironmentVariableCredentialsProvider.class))).thenReturn(snsClientBuilder);
when(snsClientBuilder.build()).thenReturn(snsClient);
final var outputEvent = handler.handleRequest(inputEvent, context);
assertThat(outputEvent).isEqualTo(inputEvent);
}
But I got Pitest issue in the report:
Could you please help me to solve it?
Thanks!