Commit 7b7cf7e5 by Biju Kunjummen Committed by Spencer Gibb

Uses ApplicationContextRunner, removes main method in tests (#2626)

parent 89cb8d1d
/*
* 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<String, RequestInterceptor> 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<String, RequestInterceptor> 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
......@@ -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);
}
}
}
......@@ -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 {
......
......@@ -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
......
......@@ -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
......
......@@ -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
......
......@@ -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
......
......@@ -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
......
/*
* 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
......@@ -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);
}
}
......@@ -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
/*
* 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() throws Exception {
this.context = new AnnotationConfigApplicationContext(
EurekaClientConfigServerAutoConfiguration.class);
assertEquals(0,
this.context.getBeanNamesForType(EurekaInstanceConfigBean.class).length);
public void offByDefault() {
new ApplicationContextRunner().withConfiguration(
AutoConfigurations.of(EurekaClientConfigServerAutoConfiguration.class))
.run(c -> {
assertEquals(0,
c.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
......@@ -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);
......
......@@ -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);
}
}
}
......@@ -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
......
......@@ -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);
}
}
}
......@@ -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,
......
......@@ -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 {
......
......@@ -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);
}
}
/*
......
......@@ -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);
}
}
}
/*
* 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 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.test.context.runner.ApplicationContextRunner;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.ConfigurableApplicationContext;
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;
/**
* @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<String, String> 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<String, String> initParameters = registration
.getInitParameters();
assertNotNull(initParameters);
assertThat(initParameters.get("wl-dispatch-polixy"),
is("work-manager-hystrix"));
});
}
}
}
\ No newline at end of file
......@@ -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();
}
}
}
......@@ -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();
}
}
}
......@@ -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();
}
}
}
/*
* 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
/*
* 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<String, LoadBalancedRetryPolicyFactory> factories = context.getBeansOfType(LoadBalancedRetryPolicyFactory.class);
assertThat(factories.values(), hasSize(1));
assertThat(factories.values().toArray()[0], instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class));
Map<String, RibbonLoadBalancingHttpClient> 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<String, LoadBalancedRetryPolicyFactory> factories = context.getBeansOfType(LoadBalancedRetryPolicyFactory.class);
assertThat(factories.values(), hasSize(1));
assertThat(factories.values().toArray()[0], instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class));
Map<String, RibbonLoadBalancingHttpClient> clients = context.getBeansOfType(RibbonLoadBalancingHttpClient.class);
assertThat(clients.values(), hasSize(1));
assertThat(clients.values().toArray()[0], instanceOf(RibbonLoadBalancingHttpClient.class));
});
}
}
/*
* 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<String, LoadBalancedRetryPolicyFactory> factories = context
.getBeansOfType(LoadBalancedRetryPolicyFactory.class);
assertThat(factories.values(), hasSize(1));
assertThat(factories.values().toArray()[0],
instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class));
Map<String, OkHttpLoadBalancingClient> 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<String, LoadBalancedRetryPolicyFactory> factories = context.getBeansOfType(LoadBalancedRetryPolicyFactory.class);
assertThat(factories.values(), hasSize(1));
assertThat(factories.values().toArray()[0], instanceOf(LoadBalancedRetryPolicyFactory.NeverRetryFactory.class));
Map<String, OkHttpLoadBalancingClient> clients = context.getBeansOfType(OkHttpLoadBalancingClient.class);
assertThat(clients.values(), hasSize(1));
assertThat(clients.values().toArray()[0], instanceOf(OkHttpLoadBalancingClient.class));
});
}
}
/*
* 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);
}
}
......@@ -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
......
......@@ -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);
}
}
......
......@@ -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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment