Ryan Baxter
8 years ago
8 changed files with 156 additions and 12 deletions
@ -0,0 +1,63 @@
@@ -0,0 +1,63 @@
|
||||
/* |
||||
* |
||||
* * Copyright 2013-2016 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.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.cloud.ClassPathExclusions; |
||||
import org.springframework.cloud.FilteredClassPathRunner; |
||||
import org.springframework.cloud.client.loadbalancer.LoadBalancedRetryPolicyFactory; |
||||
import org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration; |
||||
import org.springframework.context.ConfigurableApplicationContext; |
||||
|
||||
import static org.hamcrest.MatcherAssert.assertThat; |
||||
import static org.hamcrest.Matchers.hasSize; |
||||
|
||||
/** |
||||
* @author Ryan Baxter |
||||
*/ |
||||
@RunWith(FilteredClassPathRunner.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).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(0)); |
||||
} |
||||
} |
@ -0,0 +1,56 @@
@@ -0,0 +1,56 @@
|
||||
/* |
||||
* |
||||
* * Copyright 2013-2016 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.ribbon; |
||||
|
||||
import java.util.Map; |
||||
import org.junit.Test; |
||||
import org.junit.runner.RunWith; |
||||
import org.springframework.beans.BeansException; |
||||
import org.springframework.cloud.client.loadbalancer.LoadBalancedRetryPolicyFactory; |
||||
import org.springframework.cloud.client.loadbalancer.LoadBalancerAutoConfiguration; |
||||
import org.springframework.context.ApplicationContext; |
||||
import org.springframework.context.ApplicationContextAware; |
||||
import org.springframework.test.context.ContextConfiguration; |
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; |
||||
|
||||
import static org.hamcrest.MatcherAssert.assertThat; |
||||
import static org.hamcrest.Matchers.instanceOf; |
||||
import static org.hamcrest.collection.IsCollectionWithSize.hasSize; |
||||
|
||||
/** |
||||
* @author Ryan Baxter |
||||
*/ |
||||
@RunWith(SpringJUnit4ClassRunner.class) |
||||
@ContextConfiguration(classes = {RibbonAutoConfiguration.class, LoadBalancerAutoConfiguration.class}) |
||||
public class SpringRetryEnabledTests implements ApplicationContextAware { |
||||
|
||||
private ApplicationContext context; |
||||
|
||||
@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(RibbonLoadBalancedRetryPolicyFactory.class)); |
||||
} |
||||
|
||||
@Override |
||||
public void setApplicationContext(ApplicationContext context) throws BeansException { |
||||
this.context = context; |
||||
} |
||||
} |
Loading…
Reference in new issue