From 146a1ffc7a74fff8768f05366603322b19d9aba5 Mon Sep 17 00:00:00 2001 From: Georgios Andrianakis Date: Wed, 3 Jul 2019 12:51:31 +0300 Subject: [PATCH] Ensure that unit tests can be run when WebEnvironment.NONE is used (#109) Fixes #108 --- .../web/starter/SkipPatternAutoConfiguration.java | 10 ++++++++-- .../spring/web/starter/SkipPatternConfigTest.java | 9 ++++++--- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/opentracing-spring-web-starter/src/main/java/io/opentracing/contrib/spring/web/starter/SkipPatternAutoConfiguration.java b/opentracing-spring-web-starter/src/main/java/io/opentracing/contrib/spring/web/starter/SkipPatternAutoConfiguration.java index 4a3136db..a3dc92c4 100644 --- a/opentracing-spring-web-starter/src/main/java/io/opentracing/contrib/spring/web/starter/SkipPatternAutoConfiguration.java +++ b/opentracing-spring-web-starter/src/main/java/io/opentracing/contrib/spring/web/starter/SkipPatternAutoConfiguration.java @@ -143,6 +143,9 @@ public SkipPattern skipPatternForActuatorEndpointsDifferentPort( @Configuration protected static class DefaultSkipPatternConfig { + @Autowired(required = false) + WebTracingProperties webTracingProperties; + private static String combinedPatterns(String skipPattern) { String pattern = skipPattern; if (!StringUtils.hasText(skipPattern)) { @@ -152,9 +155,12 @@ private static String combinedPatterns(String skipPattern) { } @Bean - SkipPattern defaultSkipPatternBean(WebTracingProperties webTracingProperties) { + SkipPattern defaultSkipPatternBean() { + if (webTracingProperties == null) { + return Optional::empty; + } return () -> Optional.of(Pattern.compile(combinedPatterns(webTracingProperties.getSkipPattern()))); } } -} \ No newline at end of file +} diff --git a/opentracing-spring-web-starter/src/test/java/io/opentracing/contrib/spring/web/starter/SkipPatternConfigTest.java b/opentracing-spring-web-starter/src/test/java/io/opentracing/contrib/spring/web/starter/SkipPatternConfigTest.java index ccead42c..a01231a6 100644 --- a/opentracing-spring-web-starter/src/test/java/io/opentracing/contrib/spring/web/starter/SkipPatternConfigTest.java +++ b/opentracing-spring-web-starter/src/test/java/io/opentracing/contrib/spring/web/starter/SkipPatternConfigTest.java @@ -43,8 +43,11 @@ public class SkipPatternConfigTest { public void testShouldPickSkipPatternFromWebProperties() { WebTracingProperties webTracingProperties = new WebTracingProperties(); webTracingProperties.setSkipPattern("foo.*|bar.*"); - Pattern pattern = new SkipPatternAutoConfiguration.DefaultSkipPatternConfig() - .defaultSkipPatternBean(webTracingProperties).pattern().get(); + SkipPatternAutoConfiguration.DefaultSkipPatternConfig defaultSkipPatternConfig = + new SkipPatternAutoConfiguration.DefaultSkipPatternConfig(); + defaultSkipPatternConfig.webTracingProperties = webTracingProperties; + Pattern pattern = defaultSkipPatternConfig + .defaultSkipPatternBean().pattern().get(); then(pattern.pattern()).isEqualTo("foo.*|bar.*"); } @@ -195,4 +198,4 @@ public Collection getOperations() { } }; } -} \ No newline at end of file +}