You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cr...@apache.org on 2021/06/29 22:27:53 UTC
[sling-org-apache-sling-auth-saml2] branch master updated: added
tests for Saml2UserMgtServiceImpl NPE scenarios
This is an automated email from the ASF dual-hosted git repository.
cris pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-auth-saml2.git
The following commit(s) were added to refs/heads/master by this push:
new e9e7be8 added tests for Saml2UserMgtServiceImpl NPE scenarios
e9e7be8 is described below
commit e9e7be8ba59775bdaef57b5a5c2075e3ac93f496
Author: Cris Rockwell <cm...@umich.edu>
AuthorDate: Tue Jun 29 18:27:34 2021 -0400
added tests for Saml2UserMgtServiceImpl NPE scenarios
---
.../sling/auth/saml2/impl/Saml2UserMgtServiceImpl.java | 8 ++++++++
.../auth/saml2/impl/AuthenticationHandlerSAML2ImplTest.java | 13 +++++++++++++
2 files changed, 21 insertions(+)
diff --git a/src/main/java/org/apache/sling/auth/saml2/impl/Saml2UserMgtServiceImpl.java b/src/main/java/org/apache/sling/auth/saml2/impl/Saml2UserMgtServiceImpl.java
index 0a7ca75..e1abc18 100644
--- a/src/main/java/org/apache/sling/auth/saml2/impl/Saml2UserMgtServiceImpl.java
+++ b/src/main/java/org/apache/sling/auth/saml2/impl/Saml2UserMgtServiceImpl.java
@@ -58,6 +58,10 @@ public class Saml2UserMgtServiceImpl implements Saml2UserMgtService {
Map<String, Object> param = new HashMap<>();
param.put(ResourceResolverFactory.SUBSERVICE, SERVICE_NAME);
this.resourceResolver = resolverFactory.getServiceResourceResolver(param);
+ if (Objects.isNull(this.getResourceResolver())){
+ logger.error("Could not setup Saml2UserMgtService. Problem with Service User.");
+ return false;
+ }
logger.info(this.resourceResolver.getUserID());
session = this.resourceResolver.adaptTo(Session.class);
JackrabbitSession jrSession = (JackrabbitSession) session;
@@ -77,6 +81,10 @@ public class Saml2UserMgtServiceImpl implements Saml2UserMgtService {
return false;
}
+ ResourceResolver getResourceResolver(){
+ return this.resourceResolver;
+ }
+
@Override
public void cleanUp() {
resourceResolver.close();
diff --git a/src/test/java/org/apache/sling/auth/saml2/impl/AuthenticationHandlerSAML2ImplTest.java b/src/test/java/org/apache/sling/auth/saml2/impl/AuthenticationHandlerSAML2ImplTest.java
index 0afc9d6..895a242 100644
--- a/src/test/java/org/apache/sling/auth/saml2/impl/AuthenticationHandlerSAML2ImplTest.java
+++ b/src/test/java/org/apache/sling/auth/saml2/impl/AuthenticationHandlerSAML2ImplTest.java
@@ -22,6 +22,7 @@ package org.apache.sling.auth.saml2.impl;
import org.apache.jackrabbit.api.security.user.User;
import org.apache.sling.api.SlingHttpServletRequest;
import org.apache.sling.api.SlingHttpServletResponse;
+import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.auth.core.spi.AuthenticationInfo;
import org.hamcrest.core.StringStartsWith;
import org.jmock.Expectations;
@@ -77,6 +78,18 @@ public class AuthenticationHandlerSAML2ImplTest {
}
@Test
+ public void SamlUserMgtServiceImplNPETest() throws Exception {
+ Saml2UserMgtServiceImpl saml2UserMgtService = Mockito.mock(Saml2UserMgtServiceImpl.class);
+ when(saml2UserMgtService.getResourceResolver()).thenReturn(null);
+ assertFalse(saml2UserMgtService.setUp());
+
+ Saml2UserMgtServiceImpl saml2UserMgtService2 = Mockito.mock(Saml2UserMgtServiceImpl.class);
+ ResourceResolver resourceResolver = Mockito.mock(ResourceResolver.class);
+ when(saml2UserMgtService2.getResourceResolver()).thenReturn(resourceResolver);
+ assertFalse(saml2UserMgtService.setUp());
+ }
+
+ @Test
public void invalidTokensTest() throws Exception {
final String [] invalid = {
"1@21@3",