From 77d4e3b4e553dd59ead78c2b5f8d17892a6cdf7d Mon Sep 17 00:00:00 2001 From: Dave Syer Date: Tue, 21 Jul 2015 10:20:54 +0100 Subject: [PATCH] ENsure fix for spring-cloud-security #74 is applied --- .../src/main/java/demo/RibbonClientApplication.java | 2 ++ .../src/main/resources/application.properties | 4 ++-- .../test/java/demo/RibbonClientApplicationTests.java | 12 ++++++++---- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/oauth2-ribbon/src/main/java/demo/RibbonClientApplication.java b/oauth2-ribbon/src/main/java/demo/RibbonClientApplication.java index abba450..06e6c9d 100644 --- a/oauth2-ribbon/src/main/java/demo/RibbonClientApplication.java +++ b/oauth2-ribbon/src/main/java/demo/RibbonClientApplication.java @@ -4,10 +4,12 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.cloud.netflix.ribbon.RibbonClient; import org.springframework.context.annotation.Configuration; +import org.springframework.security.oauth2.config.annotation.web.configuration.EnableOAuth2Client; @Configuration @EnableAutoConfiguration @RibbonClient("foo") +@EnableOAuth2Client public class RibbonClientApplication { public static void main(String[] args) { diff --git a/oauth2-ribbon/src/main/resources/application.properties b/oauth2-ribbon/src/main/resources/application.properties index e1d17cc..83da9f9 100644 --- a/oauth2-ribbon/src/main/resources/application.properties +++ b/oauth2-ribbon/src/main/resources/application.properties @@ -1,4 +1,4 @@ -spring.oauth2.client.clientId: acme -spring.oauth2.client.accessTokenUri: https://example.com +security.oauth2.client.clientId: acme +security.oauth2.client.accessTokenUri: https://example.com foo.ribbon.listOfServers: example.com # debug: \ No newline at end of file diff --git a/oauth2-ribbon/src/test/java/demo/RibbonClientApplicationTests.java b/oauth2-ribbon/src/test/java/demo/RibbonClientApplicationTests.java index e15f098..81a03eb 100644 --- a/oauth2-ribbon/src/test/java/demo/RibbonClientApplicationTests.java +++ b/oauth2-ribbon/src/test/java/demo/RibbonClientApplicationTests.java @@ -13,6 +13,7 @@ import org.junit.rules.ExpectedException; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; +import org.springframework.boot.test.IntegrationTest; import org.springframework.boot.test.SpringApplicationConfiguration; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.cloud.client.loadbalancer.LoadBalancerInterceptor; @@ -20,10 +21,13 @@ import org.springframework.cloud.netflix.ribbon.RibbonClientHttpRequestFactory; import org.springframework.security.oauth2.client.OAuth2RestTemplate; import org.springframework.security.oauth2.client.resource.OAuth2AccessDeniedException; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.test.context.web.WebAppConfiguration; import org.springframework.web.client.RestTemplate; @RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(classes = RibbonClientApplication.class) +@IntegrationTest("debug=true") +@WebAppConfiguration public class RibbonClientApplicationTests { @Autowired @@ -41,14 +45,14 @@ public class RibbonClientApplicationTests { @Test public void restTemplateHasLoadBalancer() { // Just to prove that the request factory changed... - assertThat(restTemplate.getRequestFactory(), + assertThat(this.restTemplate.getRequestFactory(), instanceOf(RibbonClientHttpRequestFactory.class)); } @Test public void oauth2RestTemplateHasLoadBalancer() { // Just to prove that the interceptor is present... - assertThat(new ArrayList(oauth2RestTemplate.getInterceptors()), + assertThat(new ArrayList(this.oauth2RestTemplate.getInterceptors()), hasItem(instanceOf(LoadBalancerInterceptor.class))); } @@ -57,8 +61,8 @@ public class RibbonClientApplicationTests { @Ignore public void useRestTemplate() throws Exception { // There's nowhere to get an access token so it should fail, but in a sensible way - expected.expect(OAuth2AccessDeniedException.class); - oauth2RestTemplate.getForEntity("http://foo/bar", String.class); + this.expected.expect(OAuth2AccessDeniedException.class); + this.oauth2RestTemplate.getForEntity("http://foo/bar", String.class); } }