[cxf] 01/02: Adding OAuth public client tests

2019-08-15 Thread coheigea
This is an automated email from the ASF dual-hosted git repository.

coheigea pushed a commit to branch 3.3.x-fixes
in repository https://gitbox.apache.org/repos/asf/cxf.git

commit 2122d9fddbbc6973952842df47ce5996fd697eb1
Author: Colm O hEigeartaigh 
AuthorDate: Thu Aug 15 13:34:58 2019 +0100

Adding OAuth public client tests

(cherry picked from commit 840282a01cb6fe4ceb1dc3382cf48f2fbfcaf1fc)
---
 .../oauth2/common/JCacheOAuthDataProviderImpl.java |  17 +-
 .../security/oauth2/common/OAuth2TestUtils.java|  34 +++
 .../security/oauth2/grants/PublicClientTest.java   | 228 +
 .../oauth2/grants/grants-server-public.xml | 149 ++
 .../jaxrs/security/oauth2/grants/publicclient.xml  |  42 
 5 files changed, 466 insertions(+), 4 deletions(-)

diff --git 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
index 8161092..378529d 100644
--- 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
+++ 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
@@ -56,6 +56,11 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 
 public JCacheOAuthDataProviderImpl(String servicePort, String partnerPort,
boolean storeJwtTokenKeyOnly) throws 
Exception {
+this(servicePort, partnerPort, storeJwtTokenKeyOnly, false);
+}
+
+public JCacheOAuthDataProviderImpl(String servicePort, String partnerPort,
+   boolean storeJwtTokenKeyOnly, boolean 
createPublicClients) throws Exception {
 // Create random cache files, as this provider could be called by 
several test implementations
 super(DEFAULT_CONFIG_URL, BusFactory.getThreadDefaultBus(true),
   CLIENT_CACHE_KEY + "_" + Math.abs(new Random().nextInt()),
@@ -64,7 +69,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
   REFRESH_TOKEN_CACHE_KEY + "_" + Math.abs(new Random().nextInt()),
   storeJwtTokenKeyOnly);
 // filters/grants test client
-Client client = new Client("consumer-id", "this-is-a-secret", true);
+Client client = createPublicClients ? new Client("consumer-id", null, 
false)
+: new Client("consumer-id", "this-is-a-secret", true);
 List redirectUris = new ArrayList<>();
 redirectUris.add("http://www.blah.apache.org;);
 if (partnerPort != null) {
@@ -92,7 +98,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 this.setClient(client);
 
 // OIDC filters test client
-client = new Client("consumer-id-oidc", "this-is-a-secret", true);
+client = createPublicClients ? new Client("consumer-id-oidc", null, 
false)
+: new Client("consumer-id-oidc", "this-is-a-secret", true);
 client.setRedirectUris(Collections.singletonList("https://localhost:; 
+ servicePort
  + 
"/secured/bookstore/books"));
 
@@ -104,7 +111,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 this.setClient(client);
 
 // Audience test client
-client = new Client("consumer-id-aud", "this-is-a-secret", true);
+client = createPublicClients ? new Client("consumer-id-aud", null, 
false)
+: new Client("consumer-id-aud", "this-is-a-secret", true);
 
client.setRedirectUris(Collections.singletonList("http://www.blah.apache.org;));
 
 client.getAllowedGrantTypes().add("authorization_code");
@@ -118,7 +126,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 this.setClient(client);
 
 // Audience test client 2
-client = new Client("consumer-id-aud2", "this-is-a-secret", true);
+client = createPublicClients ? new Client("consumer-id-aud2", null, 
false)
+: new Client("consumer-id-aud2", "this-is-a-secret", true);
 
client.setRedirectUris(Collections.singletonList("http://www.blah.apache.org;));
 
 client.getAllowedGrantTypes().add("authorization_code");
diff --git 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
index 336381b..328211e 100644
--- 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
+++ 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
@@ -100,6 +100,12 @@ public final 

[cxf] 01/02: Adding OAuth public client tests

2019-08-15 Thread coheigea
This is an automated email from the ASF dual-hosted git repository.

coheigea pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cxf.git

commit 840282a01cb6fe4ceb1dc3382cf48f2fbfcaf1fc
Author: Colm O hEigeartaigh 
AuthorDate: Thu Aug 15 13:34:58 2019 +0100

Adding OAuth public client tests
---
 .../oauth2/common/JCacheOAuthDataProviderImpl.java |  17 +-
 .../security/oauth2/common/OAuth2TestUtils.java|  34 +++
 .../security/oauth2/grants/PublicClientTest.java   | 228 +
 .../oauth2/grants/grants-server-public.xml | 149 ++
 .../jaxrs/security/oauth2/grants/publicclient.xml  |  42 
 5 files changed, 466 insertions(+), 4 deletions(-)

diff --git 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
index 8161092..378529d 100644
--- 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
+++ 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/JCacheOAuthDataProviderImpl.java
@@ -56,6 +56,11 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 
 public JCacheOAuthDataProviderImpl(String servicePort, String partnerPort,
boolean storeJwtTokenKeyOnly) throws 
Exception {
+this(servicePort, partnerPort, storeJwtTokenKeyOnly, false);
+}
+
+public JCacheOAuthDataProviderImpl(String servicePort, String partnerPort,
+   boolean storeJwtTokenKeyOnly, boolean 
createPublicClients) throws Exception {
 // Create random cache files, as this provider could be called by 
several test implementations
 super(DEFAULT_CONFIG_URL, BusFactory.getThreadDefaultBus(true),
   CLIENT_CACHE_KEY + "_" + Math.abs(new Random().nextInt()),
@@ -64,7 +69,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
   REFRESH_TOKEN_CACHE_KEY + "_" + Math.abs(new Random().nextInt()),
   storeJwtTokenKeyOnly);
 // filters/grants test client
-Client client = new Client("consumer-id", "this-is-a-secret", true);
+Client client = createPublicClients ? new Client("consumer-id", null, 
false)
+: new Client("consumer-id", "this-is-a-secret", true);
 List redirectUris = new ArrayList<>();
 redirectUris.add("http://www.blah.apache.org;);
 if (partnerPort != null) {
@@ -92,7 +98,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 this.setClient(client);
 
 // OIDC filters test client
-client = new Client("consumer-id-oidc", "this-is-a-secret", true);
+client = createPublicClients ? new Client("consumer-id-oidc", null, 
false)
+: new Client("consumer-id-oidc", "this-is-a-secret", true);
 client.setRedirectUris(Collections.singletonList("https://localhost:; 
+ servicePort
  + 
"/secured/bookstore/books"));
 
@@ -104,7 +111,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 this.setClient(client);
 
 // Audience test client
-client = new Client("consumer-id-aud", "this-is-a-secret", true);
+client = createPublicClients ? new Client("consumer-id-aud", null, 
false)
+: new Client("consumer-id-aud", "this-is-a-secret", true);
 
client.setRedirectUris(Collections.singletonList("http://www.blah.apache.org;));
 
 client.getAllowedGrantTypes().add("authorization_code");
@@ -118,7 +126,8 @@ public class JCacheOAuthDataProviderImpl extends 
JCacheCodeDataProvider {
 this.setClient(client);
 
 // Audience test client 2
-client = new Client("consumer-id-aud2", "this-is-a-secret", true);
+client = createPublicClients ? new Client("consumer-id-aud2", null, 
false)
+: new Client("consumer-id-aud2", "this-is-a-secret", true);
 
client.setRedirectUris(Collections.singletonList("http://www.blah.apache.org;));
 
 client.getAllowedGrantTypes().add("authorization_code");
diff --git 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
index 336381b..328211e 100644
--- 
a/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
+++ 
b/systests/rs-security/src/test/java/org/apache/cxf/systest/jaxrs/security/oauth2/common/OAuth2TestUtils.java
@@ -100,6 +100,12 @@ public final class OAuth2TestUtils {
 if (parameters.getRequest() != null) {