From 032ecbc48ab8f76563bce880ebf226dda19c9f3a Mon Sep 17 00:00:00 2001 From: spencergibb Date: Fri, 22 May 2020 15:08:35 -0400 Subject: [PATCH 1/3] Updates tests to check the cause --- .../ConsulAutoServiceRegistrationFailFastTests.java | 4 +++- .../ConsulAutoServiceRegistrationRetryTests.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationFailFastTests.java b/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationFailFastTests.java index 39c37b96..579fdf32 100644 --- a/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationFailFastTests.java +++ b/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationFailFastTests.java @@ -31,6 +31,8 @@ import org.springframework.cloud.consul.ConsulAutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.test.annotation.DirtiesContext; +import static org.hamcrest.Matchers.isA; + /** * @author Spencer Gibb * @author Venil Noronha @@ -43,7 +45,7 @@ public class ConsulAutoServiceRegistrationFailFastTests { @Test public void testFailFastEnabled() { - this.exception.expect(ConsulException.class); + this.exception.expectCause(isA(ConsulException.class)); new SpringApplicationBuilder(TestConfig.class) .properties("spring.application.name=testregistrationfails-fast", "spring.jmx.default-domain=testautoregfailfast", "server.port=0", diff --git a/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationRetryTests.java b/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationRetryTests.java index 66bcdc85..b968e96b 100644 --- a/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationRetryTests.java +++ b/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/serviceregistry/ConsulAutoServiceRegistrationRetryTests.java @@ -34,6 +34,8 @@ import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.test.annotation.DirtiesContext; +import static org.hamcrest.Matchers.isA; + /** * @author Spencer Gibb * @author Venil Noronha @@ -49,7 +51,7 @@ public class ConsulAutoServiceRegistrationRetryTests { @Test public void testRetry() { - this.exception.expect(ConsulException.class); + this.exception.expectCause(isA(ConsulException.class)); try (ConfigurableApplicationContext context = new SpringApplicationBuilder( TestConfig.class) .properties("spring.application.name=testregistrationretry", From 7944de7c68611987aa7698e6f369fb5d0260e4dd Mon Sep 17 00:00:00 2001 From: spencergibb Date: Fri, 22 May 2020 15:09:18 -0400 Subject: [PATCH 2/3] ignores .sdkmanrc --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index ce9e2594..53dcff11 100644 --- a/.gitignore +++ b/.gitignore @@ -18,4 +18,4 @@ consul_*.zip consul_*.zip.* .vscode/ .flattened-pom.xml - +.sdkmanrc From e70cc1e82fe8e43fdd2c87547a89a3ea0a3a5b46 Mon Sep 17 00:00:00 2001 From: spencergibb Date: Fri, 22 May 2020 15:09:30 -0400 Subject: [PATCH 3/3] Deprecates joda time usage Fixes gh-612 --- .../cloud/consul/discovery/HeartbeatProperties.java | 12 ++++++++++-- .../cloud/consul/discovery/TtlScheduler.java | 2 +- .../consul/discovery/HeartbeatPropertiesTests.java | 4 ++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/HeartbeatProperties.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/HeartbeatProperties.java index 231b232a..23aa2d54 100644 --- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/HeartbeatProperties.java +++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/HeartbeatProperties.java @@ -54,8 +54,11 @@ public class HeartbeatProperties { @DecimalMax("0.9") private double intervalRatio = 2.0 / 3.0; - // TODO: did heartbeatInterval need to be a field? - + /** + * @deprecated the joda time {@link Period} will be replaced with java8 duration. + * @return the computed heartbeat interval + */ + @Deprecated protected Period computeHearbeatInterval() { // heartbeat rate at ratio * ttl, but no later than ttl -1s and, (under lesser // priority), no sooner than 1s from now @@ -68,6 +71,11 @@ public class HeartbeatProperties { return heartbeatInterval; } + @Deprecated + protected Period computeHeartbeatInterval() { + return computeHearbeatInterval(); + } + public String getTtl() { return this.ttlValue + this.ttlUnit; } diff --git a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/TtlScheduler.java b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/TtlScheduler.java index 3f3e51f1..c0ed695b 100644 --- a/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/TtlScheduler.java +++ b/spring-cloud-consul-discovery/src/main/java/org/springframework/cloud/consul/discovery/TtlScheduler.java @@ -64,7 +64,7 @@ public class TtlScheduler { public void add(String instanceId) { ScheduledFuture task = this.scheduler.scheduleAtFixedRate( new ConsulHeartbeatTask(instanceId), this.configuration - .computeHearbeatInterval().toStandardDuration().getMillis()); + .computeHeartbeatInterval().toStandardDuration().getMillis()); ScheduledFuture previousTask = this.serviceHeartbeats.put(instanceId, task); if (previousTask != null) { previousTask.cancel(true); diff --git a/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/discovery/HeartbeatPropertiesTests.java b/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/discovery/HeartbeatPropertiesTests.java index a8bdb3c4..8903f2c9 100644 --- a/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/discovery/HeartbeatPropertiesTests.java +++ b/spring-cloud-consul-discovery/src/test/java/org/springframework/cloud/consul/discovery/HeartbeatPropertiesTests.java @@ -29,7 +29,7 @@ public class HeartbeatPropertiesTests { @Test public void computeHeartbeatIntervalWorks() { HeartbeatProperties properties = new HeartbeatProperties(); - Period period = properties.computeHearbeatInterval(); + Period period = properties.computeHeartbeatInterval(); assertThat(period).isNotNull(); assertThat(period.getSeconds()).isEqualTo(20); @@ -39,7 +39,7 @@ public class HeartbeatPropertiesTests { public void computeShortHeartbeat() { HeartbeatProperties properties = new HeartbeatProperties(); properties.setTtlValue(2); - Period period = properties.computeHearbeatInterval(); + Period period = properties.computeHeartbeatInterval(); assertThat(period).isNotNull(); assertThat(period.getSeconds()).isEqualTo(1);