From 6db03f8298674fd2beea80d0864f69612e52f5b9 Mon Sep 17 00:00:00 2001 From: Brandon Clayton <bclayton@usgs.gov> Date: Thu, 16 Jan 2025 14:13:15 -0700 Subject: [PATCH] test prime --- .../earthquake/nshmp/www/PrimingResource.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java b/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java index 555b8313..831e5cb2 100644 --- a/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java +++ b/src/main/java/gov/usgs/earthquake/nshmp/www/PrimingResource.java @@ -1,6 +1,8 @@ package gov.usgs.earthquake.nshmp.www; import java.nio.file.Path; +import java.util.Optional; +import java.util.logging.Logger; import org.crac.Context; import org.crac.Resource; @@ -10,10 +12,14 @@ import software.amazon.awssdk.services.ssm.model.ParameterType; import software.amazon.awssdk.services.ssm.model.PutParameterRequest; import software.amazon.awssdk.services.ssm.model.SsmException; +import com.amazonaws.serverless.proxy.internal.testutils.MockLambdaContext; +import com.amazonaws.serverless.proxy.model.AwsProxyRequest; + import gov.usgs.earthquake.nshmp.gmm.Gmm; import io.micronaut.context.annotation.Value; import io.micronaut.crac.OrderedResource; +import io.micronaut.function.aws.proxy.MicronautLambdaHandler; import jakarta.inject.Singleton; /** @@ -27,8 +33,29 @@ public class PrimingResource implements OrderedResource { @Override public void beforeCheckpoint(Context<? extends Resource> context) throws Exception { + var log = Logger.getAnonymousLogger(); + log.info("beforeCheckpoint"); ServletUtil.model(ServletUtil.loadModel(modelPath)); updateParameter(); + + Optional<String> location = Optional.ofNullable(System.getenv("TEST_LOCATION")); + + try (MicronautLambdaHandler handler = new MicronautLambdaHandler()) { + log.info("Call usage"); + handler.handleRequest( + getAwsProxyRequest("/hazard"), + new MockLambdaContext()); + + log.info("Test site"); + if (location.isPresent()) { + log.info("Location: " + location.get()); + handler.handleRequest( + getAwsProxyRequest(String.format("/hazard/%s/760", location.get())), + new MockLambdaContext()); + } + + } + } @Override @@ -37,6 +64,13 @@ public class PrimingResource implements OrderedResource { ServletUtil.resetExecutors(); } + private static AwsProxyRequest getAwsProxyRequest(String path) { + final AwsProxyRequest awsProxyRequest = new AwsProxyRequest(); + awsProxyRequest.setHttpMethod("GET"); + awsProxyRequest.setPath(path); + return awsProxyRequest; + } + private void updateParameter() throws SsmException { var parameterName = System.getenv("IMT_PARAMETER_NAME"); -- GitLab