You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by il...@apache.org on 2020/01/03 12:47:17 UTC
[syncope] 02/03: Some cleanup to the new
LDAPMembershipPullActionsTest
This is an automated email from the ASF dual-hosted git repository.
ilgrosso pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/syncope.git
commit b78c7e6ef9d4c94ec0f0966ab26be42b43fce095
Author: Francesco Chicchiriccò <il...@apache.org>
AuthorDate: Fri Jan 3 13:26:21 2020 +0100
Some cleanup to the new LDAPMembershipPullActionsTest
---
.../pushpull/LDAPMembershipPullActionsTest.java | 62 +++++++++-------------
pom.xml | 1 -
2 files changed, 26 insertions(+), 37 deletions(-)
diff --git a/core/provisioning-java/src/test/java/org/apache/syncope/core/provisioning/java/pushpull/LDAPMembershipPullActionsTest.java b/core/provisioning-java/src/test/java/org/apache/syncope/core/provisioning/java/pushpull/LDAPMembershipPullActionsTest.java
index 2b43b3f..68598e8 100644
--- a/core/provisioning-java/src/test/java/org/apache/syncope/core/provisioning/java/pushpull/LDAPMembershipPullActionsTest.java
+++ b/core/provisioning-java/src/test/java/org/apache/syncope/core/provisioning/java/pushpull/LDAPMembershipPullActionsTest.java
@@ -19,24 +19,24 @@
package org.apache.syncope.core.provisioning.java.pushpull;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.lenient;
+import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
-import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.UUID;
-import org.apache.syncope.common.lib.patch.AnyPatch;
-import org.apache.syncope.common.lib.patch.UserPatch;
+import org.apache.syncope.common.lib.request.AnyUR;
+import org.apache.syncope.common.lib.request.UserUR;
import org.apache.syncope.common.lib.to.EntityTO;
import org.apache.syncope.common.lib.to.GroupTO;
import org.apache.syncope.common.lib.to.UserTO;
@@ -52,13 +52,11 @@ import org.apache.syncope.core.persistence.api.entity.resource.ExternalResource;
import org.apache.syncope.core.persistence.api.entity.task.ProvisioningTask;
import org.apache.syncope.core.persistence.api.entity.user.UMembership;
import org.apache.syncope.core.persistence.api.entity.user.User;
-import org.apache.syncope.core.persistence.jpa.entity.JPAAnyType;
-import org.apache.syncope.core.persistence.jpa.entity.resource.JPAProvision;
-import org.apache.syncope.core.persistence.jpa.entity.user.JPAUMembership;
-import org.apache.syncope.core.persistence.jpa.entity.user.JPAUser;
import org.apache.syncope.core.provisioning.api.Connector;
import org.apache.syncope.core.provisioning.api.pushpull.ProvisioningProfile;
import org.apache.syncope.common.lib.to.ProvisioningReport;
+import org.apache.syncope.core.persistence.api.entity.EntityFactory;
+import org.apache.syncope.core.persistence.api.entity.resource.Provision;
import org.apache.syncope.core.provisioning.java.AbstractTest;
import org.identityconnectors.framework.common.objects.Attribute;
import org.identityconnectors.framework.common.objects.ConnectorObject;
@@ -71,11 +69,15 @@ import org.mockito.Mock;
import org.quartz.JobExecutionException;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.quartz.SchedulerFactoryBean;
import org.springframework.test.util.ReflectionTestUtils;
public class LDAPMembershipPullActionsTest extends AbstractTest {
+ @Autowired
+ private EntityFactory entityFactory;
+
@Mock
private AnyTypeDAO anyTypeDAO;
@@ -117,24 +119,23 @@ public class LDAPMembershipPullActionsTest extends AbstractTest {
private EntityTO entity;
- private AnyPatch anyPatch;
+ private AnyUR anyReq;
private Map<String, Set<String>> membershipsBefore;
private User user;
- Set<ConnConfProperty> connConfProperties;
+ private Set<ConnConfProperty> connConfProperties;
@BeforeEach
public void initTest() {
- List<UMembership> uMembList = new ArrayList<>();
- UMembership uMembership = new JPAUMembership();
- user = new JPAUser();
+ user = entityFactory.newEntity(User.class);
+ UMembership uMembership = entityFactory.newEntity(UMembership.class);
uMembership.setLeftEnd(user);
ReflectionTestUtils.setField(user, "id", UUID.randomUUID().toString());
- uMembList.add(uMembership);
+ List<UMembership> uMembList = List.of(uMembership);
- anyPatch = new UserPatch();
+ anyReq = new UserUR();
membershipsBefore = new HashMap<>();
ReflectionTestUtils.setField(ldapMembershipPullActions, "membershipsBefore", membershipsBefore);
ReflectionTestUtils.setField(ldapMembershipPullActions, "membershipsAfter", membershipsAfter);
@@ -150,7 +151,7 @@ public class LDAPMembershipPullActionsTest extends AbstractTest {
lenient().when(profile.getTask()).thenReturn(provisioningTask);
lenient().when(provisioningTask.getResource()).thenReturn(externalResource);
- lenient().when(anyTypeDAO.findUser()).thenReturn(new JPAAnyType());
+ lenient().when(anyTypeDAO.findUser()).thenReturn(entityFactory.newEntity(AnyType.class));
lenient().when(profile.getConnector()).thenReturn(connector);
lenient().when(syncDelta.getObject()).thenReturn(connectorObj);
@@ -165,7 +166,7 @@ public class LDAPMembershipPullActionsTest extends AbstractTest {
Set<String> expected = new HashSet<>();
expected.add(entity.getKey());
- ldapMembershipPullActions.beforeUpdate(profile, syncDelta, entity, anyPatch);
+ ldapMembershipPullActions.beforeUpdate(profile, syncDelta, entity, anyReq);
assertTrue(entity instanceof GroupTO);
assertEquals(1, membershipsBefore.get(user.getKey()).size());
@@ -180,52 +181,41 @@ public class LDAPMembershipPullActionsTest extends AbstractTest {
memb.add(entity.getKey());
membershipsBefore.put(user.getKey(), memb);
- ldapMembershipPullActions.beforeUpdate(profile, syncDelta, entity, anyPatch);
+ ldapMembershipPullActions.beforeUpdate(profile, syncDelta, entity, anyReq);
- assertTrue(!(entity instanceof GroupTO));
+ assertFalse(entity instanceof GroupTO);
assertEquals(1, membershipsBefore.get(user.getKey()).size());
}
@Test
- @SuppressWarnings(value = { "rawtypes", "unchecked" })
public void afterWithEmptyAttributes(@Mock Attribute attribute) throws JobExecutionException {
entity = new GroupTO();
- Optional provision = Optional.of(new JPAProvision());
when(connectorObj.getAttributeByName(anyString())).thenReturn(attribute);
- when(externalResource.getProvision(any(AnyType.class))).thenReturn(provision);
+ when(externalResource.getProvision(any(AnyType.class))).thenAnswer(ic -> Optional.of(mock(Provision.class)));
ldapMembershipPullActions.after(profile, syncDelta, entity, result);
- assertTrue(entity instanceof GroupTO);
- assertTrue(provision.isPresent());
- assertEquals(new LinkedList<>(), attribute.getValue());
+ assertEquals(List.of(), attribute.getValue());
}
@Test
- @SuppressWarnings(value = { "rawtypes", "unchecked" })
public void after() throws JobExecutionException {
entity = new UserTO();
- Optional provision = Optional.empty();
- Optional match = Optional.of(new PullMatch(MatchType.ANY, user));
String expectedUid = UUID.randomUUID().toString();
Attribute attribute = new Uid(expectedUid);
- List<Object> expected = new LinkedList<>();
- expected.add(expectedUid);
+ List<String> expected = List.of(expectedUid);
when(connectorObj.getAttributeByName(anyString())).thenReturn(attribute);
- when(externalResource.getProvision(any(AnyType.class))).thenReturn(provision);
+ when(externalResource.getProvision(any(AnyType.class))).thenAnswer(ic -> Optional.empty());
when(inboundMatcher.match(any(AnyType.class), anyString(), any(ExternalResource.class), any(Connector.class))).
- thenReturn(match);
+ thenReturn(Optional.of(new PullMatch(MatchType.ANY, user)));
ldapMembershipPullActions.after(profile, syncDelta, entity, result);
verify(membershipsAfter).get(anyString());
verify(membershipsAfter).put(anyString(), any());
- assertTrue(!(entity instanceof GroupTO));
- assertTrue(!provision.isPresent());
assertEquals(expected, attribute.getValue());
- assertTrue(match.isPresent());
}
@Test
@@ -233,6 +223,7 @@ public class LDAPMembershipPullActionsTest extends AbstractTest {
@Mock Map<String, Object> jobMap,
@Mock SchedulerFactoryBean schedulerFactoryBean,
@Mock Scheduler scheduler) throws JobExecutionException, SchedulerException {
+
ReflectionTestUtils.setField(ldapMembershipPullActions, "scheduler", schedulerFactoryBean);
when(schedulerFactoryBean.getScheduler()).thenReturn(scheduler);
@@ -240,5 +231,4 @@ public class LDAPMembershipPullActionsTest extends AbstractTest {
verify(scheduler).scheduleJob(any(), any());
}
-
}
diff --git a/pom.xml b/pom.xml
index 1ed0355..5c2ac1d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -452,7 +452,6 @@ under the License.
<h2.version>1.4.200</h2.version>
<junit.version>5.5.2</junit.version>
-
<mockito.version>3.2.4</mockito.version>
<conf.directory>${project.build.directory}/test-classes</conf.directory>