From 7b7cf7e5e8a21574ae0099babd4392cd58768dd1 Mon Sep 17 00:00:00 2001 From: Biju Kunjummen Date: Wed, 17 Jan 2018 15:30:01 -0800 Subject: [PATCH] Uses ApplicationContextRunner, removes main method in tests (#2626) --- .../netflix/feign/FeignCompressionTests.java | 76 +++++++++---------- .../netflix/feign/SpringDecoderTests.java | 19 ++--- .../netflix/feign/beans/FeignClientTests.java | 14 +--- .../ribbon/FeignRibbonClientPathTests.java | 8 -- .../ribbon/FeignRibbonClientRetryTests.java | 20 ++--- .../valid/FeignClientNotPrimaryTests.java | 15 +--- .../scanning/FeignClientEnvVarTests.java | 9 +-- .../scanning/FeignClientScanningTests.java | 13 +--- .../hystrix/HystrixConfigurationTests.java | 18 +++-- .../netflix/hystrix/HystrixOnlyTests.java | 5 -- .../ConditionalOnRefreshScopeTests.java | 36 ++++----- ...entConfigServerAutoConfigurationTests.java | 60 ++++++--------- .../sample/EurekaSampleApplication.java | 5 -- .../server/ApplicationContextTests.java | 9 --- .../server/ApplicationServletPathTests.java | 7 -- .../eureka/server/ApplicationTests.java | 5 -- .../server/EurekaCustomPeerNodesTests.java | 11 +-- .../eureka/server/InstanceRegistryTests.java | 5 -- .../RefreshablePeerEurekaNodesTests.java | 5 -- .../doc/AbstractDocumentationTests.java | 24 +++--- .../HystrixDashboardConfigurationTests.java | 71 ++++++++--------- .../HystrixDashboardContextTests.java | 6 -- .../HystrixDashboardHomePageTests.java | 10 +-- .../dashboard/HystrixDashboardTests.java | 13 +--- .../netflix/ribbon/RibbonDisabledTests.java | 22 ++++-- .../ribbon/SpringRetryDisabledTests.java | 45 +++++------ .../SpringRetryDisableOkHttpClientTests.java | 59 +++++--------- .../sidecar/SidecarClientApplication.java | 50 ------------ .../netflix/turbine/TurbineHttpTests.java | 5 -- .../zuul/FormZuulProxyApplicationTests.java | 19 ++--- .../FormZuulServletProxyApplicationTests.java | 22 ++---- 31 files changed, 225 insertions(+), 461 deletions(-) delete mode 100644 spring-cloud-netflix-sidecar/src/test/java/org/springframework/cloud/netflix/sidecar/SidecarClientApplication.java diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/FeignCompressionTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/FeignCompressionTests.java index d7d21429..2a636fb2 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/FeignCompressionTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/FeignCompressionTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2017 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,13 +19,11 @@ package org.springframework.cloud.netflix.feign; import java.util.Map; -import org.junit.After; -import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.cloud.commons.httpclient.HttpClientConfiguration; import org.springframework.cloud.netflix.archaius.ArchaiusAutoConfiguration; import org.springframework.cloud.netflix.feign.encoding.FeignAcceptGzipEncodingAutoConfiguration; @@ -34,48 +32,44 @@ import org.springframework.cloud.netflix.feign.encoding.FeignContentGzipEncoding import org.springframework.cloud.netflix.feign.encoding.FeignContentGzipEncodingInterceptor; import org.springframework.cloud.test.ClassPathExclusions; import org.springframework.cloud.test.ModifiedClassPathRunner; -import org.springframework.context.ConfigurableApplicationContext; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - import feign.Client; import feign.RequestInterceptor; import feign.httpclient.ApacheHttpClient; +import static org.assertj.core.api.Assertions.assertThat; + /** * @author Ryan Baxter + * @author Biju Kunjummen */ @RunWith(ModifiedClassPathRunner.class) -@ClassPathExclusions({"ribbon-loadbalancer-{version:\\d.*}.jar"}) +@ClassPathExclusions({ "ribbon-loadbalancer-{version:\\d.*}.jar" }) public class FeignCompressionTests { - private ConfigurableApplicationContext context; - - @Before - public void setUp() { - context = new SpringApplicationBuilder().properties("feign.compression.response.enabled=true", - "feign.compression.request.enabled=true", "feign.okhttp.enabled=false").sources(PropertyPlaceholderAutoConfiguration.class, - ArchaiusAutoConfiguration.class, FeignAutoConfiguration.class, PlainConfig.class, FeignContentGzipEncodingAutoConfiguration.class, - FeignAcceptGzipEncodingAutoConfiguration.class, HttpClientConfiguration.class).web(false).run(); - } - - @After - public void tearDown() { - if(context != null) { - context.close(); - } - } - @Test public void testInterceptors() { - FeignContext feignContext = context.getBean(FeignContext.class); - Map interceptors = feignContext.getInstances("foo", RequestInterceptor.class); - assertEquals(2, interceptors.size()); - assertTrue(FeignAcceptGzipEncodingInterceptor.class.isInstance(interceptors.get("feignAcceptGzipEncodingInterceptor"))); - assertTrue(FeignContentGzipEncodingInterceptor.class.isInstance(interceptors.get("feignContentGzipEncodingInterceptor"))); + new ApplicationContextRunner() + .withPropertyValues("feign.compression.response.enabled=true", + "feign.compression.request.enabled=true", + "feign.okhttp.enabled=false") + .withConfiguration(AutoConfigurations.of(ArchaiusAutoConfiguration.class, + FeignAutoConfiguration.class, + FeignContentGzipEncodingAutoConfiguration.class, + FeignAcceptGzipEncodingAutoConfiguration.class, + HttpClientConfiguration.class, PlainConfig.class)) + .run(context -> { + FeignContext feignContext = context.getBean(FeignContext.class); + Map interceptors = feignContext + .getInstances("foo", RequestInterceptor.class); + assertThat(interceptors.size()).isEqualTo(2); + assertThat(interceptors.get("feignAcceptGzipEncodingInterceptor")) + .isInstanceOf(FeignAcceptGzipEncodingInterceptor.class); + assertThat(interceptors.get("feignContentGzipEncodingInterceptor")) + .isInstanceOf(FeignContentGzipEncodingInterceptor.class); + }); } @Configuration @@ -86,13 +80,17 @@ public class FeignCompressionTests { @Bean public ApacheHttpClient client() { - /* We know our client is an AppacheHttpClient because we disabled the OK HTTP client. FeignAcceptGzipEncodingAutoConfiguration - * won't load unless there is a bean of type ApacheHttpClient (not Client) in this test because the bean is not - * yet created and so the application context doesnt know that the Client bean is actually an instance of ApacheHttpClient, - * therefore FeignAcceptGzipEncodingAutoConfiguration will not be loaded. We just create a bean here of type - * ApacheHttpClient so that the configuration will be loaded correctly. + /* + * We know our client is an AppacheHttpClient because we disabled the OK HTTP + * client. FeignAcceptGzipEncodingAutoConfiguration won't load unless there is + * a bean of type ApacheHttpClient (not Client) in this test because the bean + * is not yet created and so the application context doesnt know that the + * Client bean is actually an instance of ApacheHttpClient, therefore + * FeignAcceptGzipEncodingAutoConfiguration will not be loaded. We just create + * a bean here of type ApacheHttpClient so that the configuration will be + * loaded correctly. */ - return (ApacheHttpClient)client; + return (ApacheHttpClient) client; } } -} +} \ No newline at end of file diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java index 87f8dcee..5558eef0 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/SpringDecoderTests.java @@ -16,11 +16,6 @@ package org.springframework.cloud.netflix.feign; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; - import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -31,7 +26,6 @@ import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.context.annotation.Configuration; @@ -44,6 +38,11 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; + /** * @author Spencer Gibb */ @@ -244,13 +243,7 @@ public class SpringDecoderTests extends FeignClientFactoryBean { public ResponseEntity getWildcard() { return ResponseEntity.ok(new Hello("wildcard")); } - - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=springdecodertest", - "management.contextPath=/admin") - .run(args); - } + } } diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/beans/FeignClientTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/beans/FeignClientTests.java index 30f53737..8e743217 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/beans/FeignClientTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/beans/FeignClientTests.java @@ -16,9 +16,6 @@ package org.springframework.cloud.netflix.feign.beans; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - import java.lang.reflect.InvocationHandler; import java.lang.reflect.Proxy; import java.util.Map; @@ -30,7 +27,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.cloud.netflix.feign.EnableFeignClients; @@ -43,6 +39,9 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + /** * @author Dave Syer */ @@ -77,13 +76,6 @@ public class FeignClientTests { public Hello getHello() { return new Hello("hello world 1"); } - - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=feignclienttest", - "management.contextPath=/admin") - .run(args); - } } public static class Hello { diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientPathTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientPathTests.java index 97d67f0c..3946c256 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientPathTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientPathTests.java @@ -24,7 +24,6 @@ import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.cloud.netflix.feign.EnableFeignClients; @@ -113,13 +112,6 @@ public class FeignRibbonClientPathTests { return new Hello("hello world"); } - public static void main(String[] args) throws InterruptedException { - new SpringApplicationBuilder(Application.class).properties( - "spring.application.name=feignribbonclientpathtest", - "management.contextPath=/admin" - ).run(args); - } - } @Test diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientRetryTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientRetryTests.java index e7120fd5..3e79c91f 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientRetryTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/ribbon/FeignRibbonClientRetryTests.java @@ -16,14 +16,15 @@ package org.springframework.cloud.netflix.feign.ribbon; -import com.netflix.loadbalancer.Server; -import com.netflix.loadbalancer.ServerList; +import java.lang.reflect.InvocationHandler; +import java.lang.reflect.Proxy; +import java.util.concurrent.atomic.AtomicInteger; + import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.cloud.netflix.feign.EnableFeignClients; @@ -38,9 +39,8 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; -import java.lang.reflect.InvocationHandler; -import java.lang.reflect.Proxy; -import java.util.concurrent.atomic.AtomicInteger; +import com.netflix.loadbalancer.Server; +import com.netflix.loadbalancer.ServerList; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; @@ -91,13 +91,7 @@ public class FeignRibbonClientRetryTests { public int retryMe() { return this.retries.getAndIncrement(); } - - public static void main(String[] args) throws InterruptedException { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=feignclientretrytest", - "management.contextPath=/admin") - .run(args); - } + } @Test diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/FeignClientNotPrimaryTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/FeignClientNotPrimaryTests.java index ab7f6952..5f11411b 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/FeignClientNotPrimaryTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/FeignClientNotPrimaryTests.java @@ -17,12 +17,13 @@ package org.springframework.cloud.netflix.feign.valid; +import java.util.List; + import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.cloud.netflix.feign.EnableFeignClients; @@ -41,12 +42,10 @@ import org.springframework.web.bind.annotation.RestController; import com.netflix.loadbalancer.Server; import com.netflix.loadbalancer.ServerList; -import static org.assertj.core.api.Assertions.assertThat; -import static org.junit.Assert.assertNull; - import feign.Logger; -import java.util.List; +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.assertNull; /** * @author Spencer Gibb @@ -100,12 +99,6 @@ public class FeignClientNotPrimaryTests { return new Hello(HELLO_WORLD_1); } - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=feignclienttest", - "management.contextPath=/admin") - .run(args); - } } @Test diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientEnvVarTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientEnvVarTests.java index 53ae9337..44607744 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientEnvVarTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientEnvVarTests.java @@ -22,7 +22,6 @@ import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.cloud.netflix.feign.EnableFeignClients; import org.springframework.cloud.netflix.feign.testclients.TestClient; @@ -72,13 +71,7 @@ public class FeignClientEnvVarTests { public String getHello() { return "hello world 1"; } - - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=feignclienttest", - "management.contextPath=/admin") - .run(args); - } + } // Load balancer with fixed server list for "local" pointing to localhost diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientScanningTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientScanningTests.java index 91c2316c..d408c52d 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientScanningTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/feign/valid/scanning/FeignClientScanningTests.java @@ -16,15 +16,11 @@ package org.springframework.cloud.netflix.feign.valid.scanning; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; - import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.cloud.netflix.feign.EnableFeignClients; @@ -44,6 +40,9 @@ import com.netflix.loadbalancer.ServerList; import feign.Client; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + /** * @author Spencer Gibb */ @@ -89,12 +88,6 @@ public class FeignClientScanningTests { return "hello world 1"; } - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=feignclienttest", - "management.contextPath=/admin") - .run(args); - } } @Test diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixConfigurationTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixConfigurationTests.java index 3982bfc0..39628434 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixConfigurationTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixConfigurationTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2014 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,17 +17,25 @@ package org.springframework.cloud.netflix.hystrix; import org.junit.Test; -import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; + +import com.netflix.hystrix.contrib.javanica.aop.aspectj.HystrixCommandAspect; + +import static org.assertj.core.api.Assertions.assertThat; /** * @author Dave Syer + * @author Biju Kunjummen */ public class HystrixConfigurationTests { @Test public void nonWebAppStartsUp() { - new SpringApplicationBuilder(HystrixCircuitBreakerConfiguration.class).web(false) - .run().close(); + new ApplicationContextRunner() + .withUserConfiguration(HystrixCircuitBreakerConfiguration.class) + .run(c -> { + assertThat(c).hasSingleBean(HystrixCommandAspect.class); + }); } -} +} \ No newline at end of file diff --git a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixOnlyTests.java b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixOnlyTests.java index 9a9fac2d..d11dae59 100644 --- a/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixOnlyTests.java +++ b/spring-cloud-netflix-core/src/test/java/org/springframework/cloud/netflix/hystrix/HystrixOnlyTests.java @@ -22,7 +22,6 @@ import java.util.Map; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.SpringApplication; import org.springframework.boot.actuate.autoconfigure.endpoint.web.WebEndpointProperties; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; @@ -160,8 +159,4 @@ class HystrixOnlyApplication { return this.service.fail(); } - public static void main(String[] args) { - SpringApplication.run(HystrixOnlyApplication.class, args); - } - } diff --git a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/ConditionalOnRefreshScopeTests.java b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/ConditionalOnRefreshScopeTests.java index 57f4bcf6..f94d8ce5 100644 --- a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/ConditionalOnRefreshScopeTests.java +++ b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/ConditionalOnRefreshScopeTests.java @@ -16,48 +16,38 @@ package org.springframework.cloud.netflix.eureka; -import org.junit.After; import org.junit.Test; -import org.springframework.boot.Banner.Mode; -import org.springframework.boot.builder.SpringApplicationBuilder; -import org.springframework.boot.test.context.assertj.AssertableApplicationContext; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.cloud.autoconfigure.RefreshAutoConfiguration; import org.springframework.cloud.netflix.eureka.EurekaClientAutoConfiguration.ConditionalOnRefreshScope; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import static org.assertj.core.api.Assertions.assertThat; -import static org.springframework.boot.WebApplicationType.NONE; /** * @author Dave Syer - * + * @author Biju Kunjummen */ public class ConditionalOnRefreshScopeTests { - private AssertableApplicationContext context; - - @After - public void close() { - if (this.context != null) { - this.context.close(); - } - } - @Test public void refreshScopeIncluded() { - this.context = AssertableApplicationContext.get(() -> new SpringApplicationBuilder(RefreshAutoConfiguration.class, - Beans.class).web(NONE).bannerMode(Mode.OFF).run()); - assertThat(this.context).hasSingleBean( + new ApplicationContextRunner() + .withConfiguration(AutoConfigurations.of(RefreshAutoConfiguration.class)) + .withUserConfiguration(Beans.class).run(c -> { + assertThat(c).hasSingleBean( org.springframework.cloud.context.scope.refresh.RefreshScope.class); - assertThat(this.context).getBean("foo").isEqualTo("foo"); + assertThat(c.getBean("foo")).isEqualTo("foo"); + }); } @Test public void refreshScopeNotIncluded() { - this.context = AssertableApplicationContext.get(() -> new SpringApplicationBuilder(Beans.class).web(NONE) - .bannerMode(Mode.OFF).run()); - assertThat(this.context).doesNotHaveBean("foo"); + new ApplicationContextRunner().withUserConfiguration(Beans.class).run(c -> { + assertThat(c).doesNotHaveBean("foo"); + }); } @Configuration @@ -69,4 +59,4 @@ public class ConditionalOnRefreshScopeTests { } } -} +} \ No newline at end of file diff --git a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/config/EurekaClientConfigServerAutoConfigurationTests.java b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/config/EurekaClientConfigServerAutoConfigurationTests.java index 5babbae6..4486d1e2 100644 --- a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/config/EurekaClientConfigServerAutoConfigurationTests.java +++ b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/config/EurekaClientConfigServerAutoConfigurationTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2017 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,15 +16,11 @@ package org.springframework.cloud.netflix.eureka.config; -import org.junit.After; import org.junit.Test; -import org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.cloud.config.server.config.ConfigServerProperties; import org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean; -import org.springframework.cloud.netflix.eureka.config.EurekaClientConfigServerAutoConfiguration; -import org.springframework.context.ConfigurableApplicationContext; -import org.springframework.context.annotation.AnnotationConfigApplicationContext; import com.netflix.appinfo.EurekaInstanceConfig; @@ -32,41 +28,33 @@ import static org.junit.Assert.assertEquals; /** * @author Dave Syer + * @author Biju Kunjummen */ public class EurekaClientConfigServerAutoConfigurationTests { - private ConfigurableApplicationContext context; - - @After - public void close() { - if (this.context != null) { - this.context.close(); - } + @Test + public void offByDefault() { + new ApplicationContextRunner().withConfiguration( + AutoConfigurations.of(EurekaClientConfigServerAutoConfiguration.class)) + .run(c -> { + assertEquals(0, + c.getBeanNamesForType(EurekaInstanceConfigBean.class).length); + }); } @Test - public void offByDefault() throws Exception { - this.context = new AnnotationConfigApplicationContext( - EurekaClientConfigServerAutoConfiguration.class); - assertEquals(0, - this.context.getBeanNamesForType(EurekaInstanceConfigBean.class).length); - } - - @Test - public void onWhenRequested() throws Exception { - setup("spring.cloud.config.server.prefix=/config"); - assertEquals(1, - this.context.getBeanNamesForType(EurekaInstanceConfig.class).length); - EurekaInstanceConfig instance = this.context.getBean(EurekaInstanceConfig.class); - assertEquals("/config", instance.getMetadataMap().get("configPath")); - } - - private void setup(String... env) { - this.context = new SpringApplicationBuilder( - PropertyPlaceholderAutoConfiguration.class, + public void onWhenRequested() { + new ApplicationContextRunner() + .withConfiguration(AutoConfigurations.of( EurekaClientConfigServerAutoConfiguration.class, - ConfigServerProperties.class, EurekaInstanceConfigBean.class).web(false) - .properties(env).run(); + ConfigServerProperties.class, EurekaInstanceConfigBean.class)) + .withPropertyValues("spring.cloud.config.server.prefix=/config") + .run(c -> { + assertEquals(1, + c.getBeanNamesForType(EurekaInstanceConfig.class).length); + EurekaInstanceConfig instance = c.getBean(EurekaInstanceConfig.class); + assertEquals("/config", instance.getMetadataMap().get("configPath")); + }); } -} +} \ No newline at end of file diff --git a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/sample/EurekaSampleApplication.java b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/sample/EurekaSampleApplication.java index bd05733a..390e6301 100644 --- a/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/sample/EurekaSampleApplication.java +++ b/spring-cloud-netflix-eureka-client/src/test/java/org/springframework/cloud/netflix/eureka/sample/EurekaSampleApplication.java @@ -22,7 +22,6 @@ import java.io.IOException; import org.springframework.beans.BeansException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.cloud.client.serviceregistry.ServiceRegistry; import org.springframework.cloud.commons.util.InetUtils; @@ -85,10 +84,6 @@ public class EurekaSampleApplication implements ApplicationContextAware, Closeab this.context = context; } - public static void main(String[] args) { - new SpringApplicationBuilder(EurekaSampleApplication.class).web(true).run(args); - } - @RequestMapping(path = "/register", method = POST) public String register() { EurekaInstanceConfigBean config = new EurekaInstanceConfigBean(inetUtils); diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationContextTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationContextTests.java index 09d606d6..50a5a9ee 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationContextTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationContextTests.java @@ -24,7 +24,6 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.actuate.autoconfigure.endpoint.web.WebEndpointProperties; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; @@ -106,13 +105,5 @@ public class ApplicationContextTests { @EnableAutoConfiguration @EnableEurekaServer protected static class Application { - - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=eureka", - "server.servlet.contextPath=/context") - .run(args); - } - } } diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationServletPathTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationServletPathTests.java index 582e18ea..5cca9faf 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationServletPathTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationServletPathTests.java @@ -23,7 +23,6 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.actuate.autoconfigure.endpoint.web.WebEndpointProperties; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.boot.web.server.LocalServerPort; @@ -55,12 +54,6 @@ public class ApplicationServletPathTests { @EnableAutoConfiguration @EnableEurekaServer protected static class Application { - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=eureka", - "server.servlet.path=/servlet") - .run(args); - } } @Test diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationTests.java index 6eee50f1..8f6ff698 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/ApplicationTests.java @@ -24,7 +24,6 @@ import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.actuate.autoconfigure.endpoint.web.WebEndpointProperties; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.boot.web.server.LocalServerPort; @@ -123,10 +122,6 @@ public class ApplicationTests { @EnableAutoConfiguration @EnableEurekaServer protected static class Application { - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=eureka").run(args); - } } } diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/EurekaCustomPeerNodesTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/EurekaCustomPeerNodesTests.java index 6ce758fa..dc69ead8 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/EurekaCustomPeerNodesTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/EurekaCustomPeerNodesTests.java @@ -17,12 +17,10 @@ package org.springframework.cloud.netflix.eureka.server; -import static org.junit.Assert.*; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -35,6 +33,8 @@ import com.netflix.eureka.cluster.PeerEurekaNodes; import com.netflix.eureka.registry.PeerAwareInstanceRegistry; import com.netflix.eureka.resources.ServerCodecs; +import static org.junit.Assert.assertTrue; + @RunWith(SpringRunner.class) @SpringBootTest(classes = EurekaCustomPeerNodesTests.Application.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, value = { "spring.application.name=eureka", "server.contextPath=/context", @@ -55,13 +55,6 @@ public class EurekaCustomPeerNodesTests { @EnableEurekaServer protected static class Application { - public static void main(String[] args) { - new SpringApplicationBuilder(ApplicationContextTests.Application.class) - .properties("spring.application.name=eureka", - "server.contextPath=/context") - .run(args); - } - @Bean public PeerEurekaNodes myPeerEurekaNodes(PeerAwareInstanceRegistry registry, EurekaServerConfig eurekaServerConfig, diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/InstanceRegistryTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/InstanceRegistryTests.java index b2b3e561..4b2867e2 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/InstanceRegistryTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/InstanceRegistryTests.java @@ -10,7 +10,6 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.mock.mockito.SpyBean; import org.springframework.cloud.netflix.eureka.server.InstanceRegistryTests.TestApplication; @@ -147,10 +146,6 @@ public class InstanceRegistryTests { public TestEvents testEvents() { return new TestEvents(); } - - public static void main(String[] args) { - new SpringApplicationBuilder(TestApplication.class).run(args); - } } protected static class TestEvents { diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/RefreshablePeerEurekaNodesTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/RefreshablePeerEurekaNodesTests.java index c95689fe..0fcbb2ea 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/RefreshablePeerEurekaNodesTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/RefreshablePeerEurekaNodesTests.java @@ -29,7 +29,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.security.SecurityAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.util.TestPropertyValues; import org.springframework.boot.test.web.client.TestRestTemplate; @@ -231,10 +230,6 @@ public class RefreshablePeerEurekaNodesTests { @EnableAutoConfiguration(exclude = { SecurityAutoConfiguration.class }) protected static class Application { - - public static void main(String[] args) { - new SpringApplicationBuilder(RefreshablePeerEurekaNodesTests.Application.class).run(args); - } } /* diff --git a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/AbstractDocumentationTests.java b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/AbstractDocumentationTests.java index 08c2dde3..b666ac09 100644 --- a/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/AbstractDocumentationTests.java +++ b/spring-cloud-netflix-eureka-server/src/test/java/org/springframework/cloud/netflix/eureka/server/doc/AbstractDocumentationTests.java @@ -18,21 +18,11 @@ package org.springframework.cloud.netflix.eureka.server.doc; import java.util.UUID; -import com.netflix.appinfo.ApplicationInfoManager; -import com.netflix.appinfo.InstanceInfo; -import com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl; - -import io.restassured.RestAssured; -import io.restassured.builder.RequestSpecBuilder; -import io.restassured.filter.Filter; -import io.restassured.specification.RequestSpecification; import org.junit.After; import org.junit.Rule; import org.junit.runner.RunWith; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.web.server.LocalServerPort; @@ -48,6 +38,15 @@ import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.util.ReflectionTestUtils; +import com.netflix.appinfo.ApplicationInfoManager; +import com.netflix.appinfo.InstanceInfo; +import com.netflix.eureka.registry.PeerAwareInstanceRegistryImpl; + +import io.restassured.RestAssured; +import io.restassured.builder.RequestSpecBuilder; +import io.restassured.filter.Filter; +import io.restassured.specification.RequestSpecification; + import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessRequest; import static org.springframework.restdocs.operation.preprocess.Preprocessors.preprocessResponse; import static org.springframework.restdocs.operation.preprocess.Preprocessors.prettyPrint; @@ -158,11 +157,6 @@ public abstract class AbstractDocumentationTests { @EnableAutoConfiguration @EnableEurekaServer protected static class Application { - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class).properties( - "spring.application.name=eureka", "management.security.enabled=false", - "eureka.client.registerWithEureka=true").run(args); - } } } diff --git a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardConfigurationTests.java b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardConfigurationTests.java index 4fddab5b..33d8a644 100644 --- a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardConfigurationTests.java +++ b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardConfigurationTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2017 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,39 +16,28 @@ package org.springframework.cloud.netflix.hystrix.dashboard; +import java.util.Map; + +import org.apache.http.Header; +import org.apache.http.message.BasicHeader; +import org.junit.Test; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; +import org.springframework.boot.web.servlet.ServletRegistrationBean; +import org.springframework.mock.web.MockHttpServletResponse; +import org.springframework.test.util.ReflectionTestUtils; + import static org.hamcrest.Matchers.is; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertThat; -import java.util.Map; - -import org.apache.http.Header; -import org.apache.http.message.BasicHeader; -import org.junit.After; -import org.junit.Test; -import org.springframework.boot.Banner.Mode; -import org.springframework.boot.builder.SpringApplicationBuilder; -import org.springframework.boot.web.servlet.ServletRegistrationBean; -import org.springframework.context.ConfigurableApplicationContext; -import org.springframework.mock.web.MockHttpServletResponse; -import org.springframework.test.util.ReflectionTestUtils; - /** * @author Roy Clarkson * @author Fahim Farook + * @author Biju Kunjummen */ public class HystrixDashboardConfigurationTests { - private ConfigurableApplicationContext context; - - @After - public void close() { - if (this.context != null) { - this.context.close(); - } - } - @Test public void normal() { MockHttpServletResponse response = new MockHttpServletResponse(); @@ -56,7 +45,7 @@ public class HystrixDashboardConfigurationTests { headers[0] = new BasicHeader("Content-Type", "text/proxy.stream"); HystrixDashboardConfiguration.ProxyStreamServlet proxyStreamServlet = new HystrixDashboardConfiguration.ProxyStreamServlet(); ReflectionTestUtils.invokeMethod(proxyStreamServlet, - "copyHeadersToServletResponse", headers, response); + "copyHeadersToServletResponse", headers, response); assertThat(response.getHeaderNames().size(), is(1)); assertThat(response.getHeader("Content-Type"), is("text/proxy.stream")); } @@ -69,7 +58,7 @@ public class HystrixDashboardConfigurationTests { headers[1] = new BasicHeader("Connection", "close"); HystrixDashboardConfiguration.ProxyStreamServlet proxyStreamServlet = new HystrixDashboardConfiguration.ProxyStreamServlet(); ReflectionTestUtils.invokeMethod(proxyStreamServlet, - "copyHeadersToServletResponse", headers, response); + "copyHeadersToServletResponse", headers, response); assertThat(response.getHeaderNames().size(), is(2)); assertThat(response.getHeader("Content-Type"), is("text/proxy.stream")); assertThat(response.getHeader("Connection"), is("close")); @@ -84,7 +73,7 @@ public class HystrixDashboardConfigurationTests { HystrixDashboardConfiguration.ProxyStreamServlet proxyStreamServlet = new HystrixDashboardConfiguration.ProxyStreamServlet(); proxyStreamServlet.setEnableIgnoreConnectionCloseHeader(true); ReflectionTestUtils.invokeMethod(proxyStreamServlet, - "copyHeadersToServletResponse", headers, response); + "copyHeadersToServletResponse", headers, response); assertThat(response.getHeaderNames().size(), is(1)); assertThat(response.getHeader("Content-Type"), is("text/proxy.stream")); assertNull(response.getHeader("Connection")); @@ -99,22 +88,28 @@ public class HystrixDashboardConfigurationTests { HystrixDashboardConfiguration.ProxyStreamServlet proxyStreamServlet = new HystrixDashboardConfiguration.ProxyStreamServlet(); proxyStreamServlet.setEnableIgnoreConnectionCloseHeader(false); ReflectionTestUtils.invokeMethod(proxyStreamServlet, - "copyHeadersToServletResponse", headers, response); + "copyHeadersToServletResponse", headers, response); assertThat(response.getHeaderNames().size(), is(2)); assertThat(response.getHeader("Content-Type"), is("text/proxy.stream")); assertThat(response.getHeader("Connection"), is("close")); } - + @Test public void initParameters() { - this.context = new SpringApplicationBuilder(HystrixDashboardConfiguration.class) - .properties("hystrix.dashboard.init-parameters.wl-dispatch-polixy=work-manager-hystrix") - .web(false).bannerMode(Mode.OFF).run(); - final ServletRegistrationBean registration = this.context.getBean(ServletRegistrationBean.class); - assertNotNull(registration); - - final Map initParameters = registration.getInitParameters(); - assertNotNull(initParameters); - assertThat(initParameters.get("wl-dispatch-polixy"), is("work-manager-hystrix")); + new ApplicationContextRunner() + .withUserConfiguration(HystrixDashboardConfiguration.class) + .withPropertyValues( + "hystrix.dashboard.init-parameters.wl-dispatch-polixy=work-manager-hystrix") + .run(context -> { + final ServletRegistrationBean registration = context + .getBean(ServletRegistrationBean.class); + assertNotNull(registration); + + final Map initParameters = registration + .getInitParameters(); + assertNotNull(initParameters); + assertThat(initParameters.get("wl-dispatch-polixy"), + is("work-manager-hystrix")); + }); } -} +} \ No newline at end of file diff --git a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardContextTests.java b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardContextTests.java index 19f10297..fe8724d6 100644 --- a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardContextTests.java +++ b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardContextTests.java @@ -20,7 +20,6 @@ package org.springframework.cloud.netflix.hystrix.dashboard; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; @@ -98,11 +97,6 @@ public class HystrixDashboardContextTests { @EnableAutoConfiguration @EnableHystrixDashboard protected static class Application { - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class).properties( - "spring.application.name=hystrix-dashboard", - "server.servlet.context-path=/context").run(); - } } } diff --git a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardHomePageTests.java b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardHomePageTests.java index 37884f58..5e6c38b8 100644 --- a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardHomePageTests.java +++ b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardHomePageTests.java @@ -16,13 +16,10 @@ package org.springframework.cloud.netflix.hystrix.dashboard; -import static org.junit.Assert.assertEquals; - import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; @@ -34,6 +31,8 @@ import org.springframework.stereotype.Controller; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.web.bind.annotation.RequestMapping; +import static org.junit.Assert.assertEquals; + /** * @author Dave Syer * @@ -80,11 +79,6 @@ public class HystrixDashboardHomePageTests { return "forward:/hystrix"; } - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=hystrix-dashboard").run(); - } - } } diff --git a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardTests.java b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardTests.java index 99aaca87..c1f00302 100644 --- a/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardTests.java +++ b/spring-cloud-netflix-hystrix-dashboard/src/test/java/org/springframework/cloud/netflix/hystrix/dashboard/HystrixDashboardTests.java @@ -16,14 +16,10 @@ package org.springframework.cloud.netflix.hystrix.dashboard; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; @@ -33,6 +29,9 @@ import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + /** * @author Dave Syer */ @@ -76,12 +75,6 @@ public class HystrixDashboardTests { @EnableAutoConfiguration @EnableHystrixDashboard protected static class Application { - - public static void main(String[] args) { - new SpringApplicationBuilder(Application.class) - .properties("spring.application.name=hystrix-dashboard").run(); - } - } } diff --git a/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonDisabledTests.java b/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonDisabledTests.java index 4385c360..9ee37bc2 100644 --- a/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonDisabledTests.java +++ b/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/RibbonDisabledTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2017 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,20 +19,28 @@ package org.springframework.cloud.netflix.ribbon; import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.cloud.test.ClassPathExclusions; import org.springframework.cloud.test.ModifiedClassPathRunner; +import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; + /** * @author Ryan Baxter + * @author Biju Kunjummen */ @RunWith(ModifiedClassPathRunner.class) -@ClassPathExclusions( {"ribbon-{version:\\d.*}.jar"} ) +@ClassPathExclusions({ "ribbon-{version:\\d.*}.jar" }) public class RibbonDisabledTests { - - @Test(expected = ArrayStoreException.class) + @Test public void testRibbonDisabled() { - new SpringApplicationBuilder().web(false).sources(RibbonAutoConfiguration.class) - .run().close(); + assertThatThrownBy(() -> new ApplicationContextRunner() + .withConfiguration(AutoConfigurations.of(RibbonAutoConfiguration.class)) + .run(context -> { + assertThat(context.getBeanNamesForType(SpringClientFactory.class)) + .hasSize(0); + })).hasCauseExactlyInstanceOf(ArrayStoreException.class); } } \ No newline at end of file diff --git a/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/SpringRetryDisabledTests.java b/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/SpringRetryDisabledTests.java index e32733a7..05fa3441 100644 --- a/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/SpringRetryDisabledTests.java +++ b/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/SpringRetryDisabledTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2017 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,17 +18,16 @@ package org.springframework.cloud.netflix.ribbon; import java.util.Map; -import org.junit.After; -import org.junit.Before; + import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.cloud.client.loadbalancer.LoadBalancedRetryPolicyFactory; import org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration; import org.springframework.cloud.netflix.ribbon.apache.RibbonLoadBalancingHttpClient; import org.springframework.cloud.test.ClassPathExclusions; import org.springframework.cloud.test.ModifiedClassPathRunner; -import org.springframework.context.ConfigurableApplicationContext; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.hasSize; @@ -36,33 +35,25 @@ import static org.hamcrest.Matchers.instanceOf; /** * @author Ryan Baxter + * @author Biju Kunjummen */ @RunWith(ModifiedClassPathRunner.class) @ClassPathExclusions({"spring-retry-*.jar", "spring-boot-starter-aop-*.jar"}) public class SpringRetryDisabledTests { - private ConfigurableApplicationContext context; - - @Before - public void setUp() { - context = new SpringApplicationBuilder().web(false) - .sources(RibbonAutoConfiguration.class,LoadBalancerAutoConfiguration.class, RibbonClientConfiguration.class).run(); - } - - @After - public void tearDown() { - if(context != null) { - context.close(); - } - } - @Test - public void testLoadBalancedRetryFactoryBean() throws Exception { - Map factories = context.getBeansOfType(LoadBalancedRetryPolicyFactory.class); - assertThat(factories.values(), hasSize(1)); - assertThat(factories.values().toArray()[0], instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class)); - Map clients = context.getBeansOfType(RibbonLoadBalancingHttpClient.class); - assertThat(clients.values(), hasSize(1)); - assertThat(clients.values().toArray()[0], instanceOf(RibbonLoadBalancingHttpClient.class)); + public void testLoadBalancedRetryFactoryBean() { + new ApplicationContextRunner() + .withConfiguration(AutoConfigurations.of(RibbonAutoConfiguration.class, + LoadBalancerAutoConfiguration.class, + RibbonClientConfiguration.class)) + .run(context -> { + Map factories = context.getBeansOfType(LoadBalancedRetryPolicyFactory.class); + assertThat(factories.values(), hasSize(1)); + assertThat(factories.values().toArray()[0], instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class)); + Map clients = context.getBeansOfType(RibbonLoadBalancingHttpClient.class); + assertThat(clients.values(), hasSize(1)); + assertThat(clients.values().toArray()[0], instanceOf(RibbonLoadBalancingHttpClient.class)); + }); } } diff --git a/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/okhttp/SpringRetryDisableOkHttpClientTests.java b/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/okhttp/SpringRetryDisableOkHttpClientTests.java index f3e25538..c78e740a 100644 --- a/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/okhttp/SpringRetryDisableOkHttpClientTests.java +++ b/spring-cloud-netflix-ribbon/src/test/java/org/springframework/cloud/netflix/ribbon/okhttp/SpringRetryDisableOkHttpClientTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2013-2017 the original author or authors. + * Copyright 2013-2018 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,11 +17,11 @@ package org.springframework.cloud.netflix.ribbon.okhttp; import java.util.Map; -import org.junit.After; -import org.junit.Before; + import org.junit.Test; import org.junit.runner.RunWith; -import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.autoconfigure.AutoConfigurations; +import org.springframework.boot.test.context.runner.ApplicationContextRunner; import org.springframework.cloud.client.loadbalancer.LoadBalancedRetryPolicyFactory; import org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration; import org.springframework.cloud.commons.httpclient.HttpClientConfiguration; @@ -29,7 +29,6 @@ import org.springframework.cloud.netflix.ribbon.RibbonAutoConfiguration; import org.springframework.cloud.netflix.ribbon.RibbonClientConfiguration; import org.springframework.cloud.test.ClassPathExclusions; import org.springframework.cloud.test.ModifiedClassPathRunner; -import org.springframework.context.ConfigurableApplicationContext; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.hasSize; @@ -37,44 +36,28 @@ import static org.hamcrest.Matchers.instanceOf; /** * @author Ryan Baxter + * @author Biju Kunjummen */ @RunWith(ModifiedClassPathRunner.class) @ClassPathExclusions({"spring-retry-*.jar", "spring-boot-starter-aop-*.jar"}) public class SpringRetryDisableOkHttpClientTests { - private ConfigurableApplicationContext context; - - @Before - public void setUp() { - context = new SpringApplicationBuilder().web(false) - .properties("ribbon.okhttp.enabled=true") - .sources(RibbonAutoConfiguration.class, - LoadBalancerAutoConfiguration.class, - HttpClientConfiguration.class, - OkHttpLoadBalancingClientTests.OkHttpClientConfiguration.class, - RibbonClientConfiguration.class) - .run(); - - } - - @After - public void tearDown() { - if (context != null) { - context.close(); - } - } - @Test - public void testLoadBalancedRetryFactoryBean() throws Exception { - Map factories = context - .getBeansOfType(LoadBalancedRetryPolicyFactory.class); - assertThat(factories.values(), hasSize(1)); - assertThat(factories.values().toArray()[0], - instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class)); - Map clients = context - .getBeansOfType(OkHttpLoadBalancingClient.class); - assertThat(clients.values(), hasSize(1)); - assertThat(clients.values().toArray()[0], - instanceOf(OkHttpLoadBalancingClient.class)); + public void testLoadBalancedRetryFactoryBean() { + new ApplicationContextRunner() + .withPropertyValues("ribbon.okhttp.enabled=true") + .withConfiguration(AutoConfigurations.of(RibbonAutoConfiguration.class, + LoadBalancerAutoConfiguration.class, + HttpClientConfiguration.class, RibbonClientConfiguration.class)) + .withUserConfiguration( + OkHttpLoadBalancingClientTests.OkHttpClientConfiguration.class) + .run(context -> { + Map factories = context.getBeansOfType(LoadBalancedRetryPolicyFactory.class); + assertThat(factories.values(), hasSize(1)); + assertThat(factories.values().toArray()[0], instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class)); + Map clients = context.getBeansOfType(OkHttpLoadBalancingClient.class); + assertThat(clients.values(), hasSize(1)); + assertThat(clients.values().toArray()[0], instanceOf(OkHttpLoadBalancingClient.class)); + }); } } diff --git a/spring-cloud-netflix-sidecar/src/test/java/org/springframework/cloud/netflix/sidecar/SidecarClientApplication.java b/spring-cloud-netflix-sidecar/src/test/java/org/springframework/cloud/netflix/sidecar/SidecarClientApplication.java deleted file mode 100644 index 3d8a401d..00000000 --- a/spring-cloud-netflix-sidecar/src/test/java/org/springframework/cloud/netflix/sidecar/SidecarClientApplication.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2013-2015 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.cloud.netflix.sidecar; - -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; -import org.springframework.cloud.client.ServiceInstance; -import org.springframework.cloud.client.loadbalancer.LoadBalancerClient; -import org.springframework.context.annotation.Configuration; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * @author Spencer Gibb - */ -@EnableAutoConfiguration -@Configuration -@RestController -public class SidecarClientApplication { - - @Autowired - public LoadBalancerClient lb; - - @RequestMapping("/") - public ServiceInstance home() { - return lb.choose("sidecarTest"); - } - - public static void main(String[] args) { - new SpringApplicationBuilder() - .properties("spring.application.name=sidecarClient") - .sources(SidecarClientApplication.class) - .run(args); - } -} diff --git a/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineHttpTests.java b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineHttpTests.java index 95adc064..77ea0e6e 100644 --- a/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineHttpTests.java +++ b/spring-cloud-netflix-turbine/src/test/java/org/springframework/cloud/netflix/turbine/TurbineHttpTests.java @@ -19,7 +19,6 @@ package org.springframework.cloud.netflix.turbine; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @@ -34,10 +33,6 @@ public class TurbineHttpTests { @EnableAutoConfiguration @EnableTurbine public static class TurbineHttpSampleApplication { - public static void main(String[] args) { - new SpringApplicationBuilder().sources(TurbineHttpSampleApplication.class) - .run(args); - } } @Test diff --git a/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulProxyApplicationTests.java b/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulProxyApplicationTests.java index dce8d6d4..36fdcefc 100644 --- a/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulProxyApplicationTests.java +++ b/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulProxyApplicationTests.java @@ -23,24 +23,17 @@ import java.util.Map; import javax.inject.Inject; import javax.servlet.http.Part; -import com.netflix.loadbalancer.Server; -import com.netflix.loadbalancer.ServerList; -import com.netflix.zuul.ZuulFilter; -import com.netflix.zuul.context.RequestContext; - import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; - import org.springframework.boot.actuate.trace.InMemoryTraceRepository; import org.springframework.boot.actuate.trace.TraceRepository; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; -import org.springframework.boot.web.server.LocalServerPort; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; +import org.springframework.boot.web.server.LocalServerPort; import org.springframework.cloud.netflix.ribbon.RibbonClient; import org.springframework.cloud.netflix.ribbon.RibbonClients; import org.springframework.cloud.netflix.ribbon.StaticServerList; @@ -62,6 +55,11 @@ import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; +import com.netflix.loadbalancer.Server; +import com.netflix.loadbalancer.ServerList; +import com.netflix.zuul.ZuulFilter; +import com.netflix.zuul.context.RequestContext; + import static java.nio.charset.Charset.defaultCharset; import static org.junit.Assert.assertEquals; import static org.springframework.cloud.netflix.zuul.filters.support.FilterConstants.PRE_TYPE; @@ -304,11 +302,6 @@ class FormZuulProxyApplication { } public static void main(String[] args) { - new SpringApplicationBuilder(FormZuulProxyApplication.class) - .properties("zuul.routes.simplefzpat:/simplefzpat/**", - "zuul.routes.direct.url:http://localhost:9999", - "multipart.maxFileSize:4096MB", "multipart.maxRequestSize:4096MB") - .run(args); } } diff --git a/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulServletProxyApplicationTests.java b/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulServletProxyApplicationTests.java index f2086f44..0f177392 100644 --- a/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulServletProxyApplicationTests.java +++ b/spring-cloud-netflix-zuul/src/test/java/org/springframework/cloud/netflix/zuul/FormZuulServletProxyApplicationTests.java @@ -21,25 +21,17 @@ import java.io.IOException; import java.io.InputStream; import java.util.Map; -import com.netflix.loadbalancer.Server; -import com.netflix.loadbalancer.ServerList; -import com.netflix.zuul.ZuulFilter; -import com.netflix.zuul.context.RequestContext; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.actuate.trace.InMemoryTraceRepository; import org.springframework.boot.actuate.trace.TraceRepository; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; -import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; import org.springframework.boot.test.web.client.TestRestTemplate; import org.springframework.boot.web.server.LocalServerPort; import org.springframework.cloud.netflix.ribbon.RibbonClient; @@ -63,6 +55,11 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; +import com.netflix.loadbalancer.Server; +import com.netflix.loadbalancer.ServerList; +import com.netflix.zuul.ZuulFilter; +import com.netflix.zuul.context.RequestContext; + import static org.junit.Assert.assertEquals; import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT; import static org.springframework.cloud.netflix.zuul.filters.support.FilterConstants.PRE_TYPE; @@ -220,15 +217,6 @@ class FormZuulServletProxyApplication { }; } - public static void main(String[] args) { - new SpringApplicationBuilder(FormZuulProxyApplication.class) - .properties("zuul.routes.simplefzspat:/zuul/simplefzspat/**", - "zuul.routes.direct.url:http://localhost:9999", - "zuul.routes.direct.path:/zuul/direct/**", - "multipart.maxFileSize:4096MB", "multipart.maxRequestSize:4096MB") - .run(args); - } - } // Load balancer with fixed server list for "simplefzspat" pointing to localhost