From a09ed879cfe5219ffcf7974eb0e5c95cbdd3b198 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Knut=20Olav=20L=C3=B8ite?= Date: Thu, 25 Jan 2024 14:24:32 +0100 Subject: [PATCH] chore: only reset dialect result when it has changed Only change the dialect result that is returned by the mock server when the dialect has actually changed. This makes the test a bit quicker, as we also don't have to close the SpannerPool after each test. --- .../cloud/spanner/jdbc/SavepointMockServerTest.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/google/cloud/spanner/jdbc/SavepointMockServerTest.java b/src/test/java/com/google/cloud/spanner/jdbc/SavepointMockServerTest.java index 2c5d5185d..f74cff82f 100644 --- a/src/test/java/com/google/cloud/spanner/jdbc/SavepointMockServerTest.java +++ b/src/test/java/com/google/cloud/spanner/jdbc/SavepointMockServerTest.java @@ -43,6 +43,7 @@ import java.sql.SQLException; import java.sql.Savepoint; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; import org.junit.After; import org.junit.Before; @@ -54,6 +55,8 @@ @RunWith(Parameterized.class) public class SavepointMockServerTest extends AbstractMockServerTest { + private static Dialect currentDialect; + @Parameter public Dialect dialect; @Parameters(name = "dialect = {0}") @@ -63,13 +66,18 @@ public static Object[] data() { @Before public void setupDialect() { - mockSpanner.putStatementResult(StatementResult.detectDialectResult(this.dialect)); + // Only reset the dialect result when it has actually changed. This prevents the SpannerPool + // from being closed after each test, which again makes the test slower. + if (!Objects.equals(this.dialect, currentDialect)) { + currentDialect = this.dialect; + mockSpanner.putStatementResult(StatementResult.detectDialectResult(this.dialect)); + SpannerPool.closeSpannerPool(); + } } @After public void clearRequests() { mockSpanner.clearRequests(); - SpannerPool.closeSpannerPool(); } private String createUrl() {