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 2013/12/16 12:04:57 UTC
svn commit: r1551172 [7/7] - in /syncope/trunk: ./ client/
client/src/main/java/org/apache/syncope/client/
client/src/main/java/org/apache/syncope/client/rest/ common/
common/src/main/java/org/apache/syncope/common/
common/src/main/java/org/apache/sync...
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/SearchTestITCase.java Mon Dec 16 11:04:52 2013
@@ -24,17 +24,13 @@ import static org.junit.Assert.assertNot
import static org.junit.Assert.assertTrue;
import java.util.HashSet;
-import java.util.List;
import java.util.Set;
-import org.apache.syncope.common.search.AttributableCond;
-import org.apache.syncope.common.search.AttributeCond;
-import org.apache.syncope.common.search.EntitlementCond;
-import org.apache.syncope.common.search.NodeCond;
-import org.apache.syncope.common.search.ResourceCond;
-import org.apache.syncope.common.services.InvalidSearchConditionException;
+import org.apache.syncope.client.SyncopeClient;
+import org.apache.syncope.common.reqres.PagedResult;
import org.apache.syncope.common.to.RoleTO;
import org.apache.syncope.common.to.UserTO;
+
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
@@ -43,40 +39,26 @@ import org.junit.runners.MethodSorters;
public class SearchTestITCase extends AbstractTest {
@Test
- public void searchUser() throws InvalidSearchConditionException {
+ public void searchUser() {
// LIKE
- AttributeCond fullnameLeafCond1 = new AttributeCond(AttributeCond.Type.LIKE);
- fullnameLeafCond1.setSchema("fullname");
- fullnameLeafCond1.setExpression("%o%");
-
- AttributeCond fullnameLeafCond2 = new AttributeCond(AttributeCond.Type.LIKE);
- fullnameLeafCond2.setSchema("fullname");
- fullnameLeafCond2.setExpression("%i%");
-
- NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getLeafCond(fullnameLeafCond1), NodeCond.getLeafCond(
- fullnameLeafCond2));
-
- assertTrue(searchCondition.isValid());
-
- List<UserTO> matchedUsers = userService.search(searchCondition);
-
+ PagedResult<UserTO> matchedUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().
+ is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query());
assertNotNull(matchedUsers);
- assertFalse(matchedUsers.isEmpty());
- for (UserTO user : matchedUsers) {
+ assertFalse(matchedUsers.getResult().isEmpty());
+
+ for (UserTO user : matchedUsers.getResult()) {
assertNotNull(user);
}
// ISNULL
- AttributeCond isNullCond = new AttributeCond(AttributeCond.Type.ISNULL);
- isNullCond.setSchema("loginDate");
- searchCondition = NodeCond.getLeafCond(isNullCond);
-
- matchedUsers = userService.search(searchCondition);
+ matchedUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().isNull("loginDate").query());
assertNotNull(matchedUsers);
- assertFalse(matchedUsers.isEmpty());
+ assertFalse(matchedUsers.getResult().isEmpty());
- Set<Long> userIds = new HashSet<Long>(matchedUsers.size());
- for (UserTO user : matchedUsers) {
+ Set<Long> userIds = new HashSet<Long>(matchedUsers.getResult().size());
+ for (UserTO user : matchedUsers.getResult()) {
userIds.add(user.getId());
}
assertTrue(userIds.contains(2L));
@@ -84,69 +66,38 @@ public class SearchTestITCase extends Ab
}
@Test
- public void searchByUsernameAndId() throws InvalidSearchConditionException {
- final AttributableCond usernameLeafCond = new AttributableCond(AttributableCond.Type.EQ);
- usernameLeafCond.setSchema("username");
- usernameLeafCond.setExpression("rossini");
-
- final AttributableCond idRightCond = new AttributableCond(AttributableCond.Type.LT);
- idRightCond.setSchema("id");
- idRightCond.setExpression("2");
-
- final NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getLeafCond(usernameLeafCond), NodeCond.
- getLeafCond(idRightCond));
-
- assertTrue(searchCondition.isValid());
-
- final List<UserTO> matchingUsers = userService.search(searchCondition);
+ public void searchByUsernameAndId() {
+ final PagedResult<UserTO> matchingUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().
+ is("username").equalTo("rossini").and("id").lessThan(2).query());
assertNotNull(matchingUsers);
- assertEquals(1, matchingUsers.size());
- assertEquals("rossini", matchingUsers.iterator().next().getUsername());
- assertEquals(1L, matchingUsers.iterator().next().getId());
+ assertEquals(1, matchingUsers.getResult().size());
+ assertEquals("rossini", matchingUsers.getResult().iterator().next().getUsername());
+ assertEquals(1L, matchingUsers.getResult().iterator().next().getId());
}
@Test
- public void searchByRolenameAndId() throws InvalidSearchConditionException {
- final AttributableCond rolenameLeafCond = new AttributableCond(AttributableCond.Type.EQ);
- rolenameLeafCond.setSchema("name");
- rolenameLeafCond.setExpression("root");
-
- final AttributableCond idRightCond = new AttributableCond(AttributableCond.Type.LT);
- idRightCond.setSchema("id");
- idRightCond.setExpression("2");
-
- final NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getLeafCond(rolenameLeafCond),
- NodeCond.getLeafCond(idRightCond));
-
- assertTrue(searchCondition.isValid());
-
- final List<RoleTO> matchingRoles = roleService.search(searchCondition);
+ public void searchByRolenameAndId() {
+ final PagedResult<RoleTO> matchingRoles = roleService.search(
+ SyncopeClient.getSearchConditionBuilder().
+ is("name").equalTo("root").and("id").lessThan(2).query());
assertNotNull(matchingRoles);
- assertEquals(1, matchingRoles.size());
- assertEquals("root", matchingRoles.iterator().next().getName());
- assertEquals(1L, matchingRoles.iterator().next().getId());
+ assertEquals(1, matchingRoles.getResult().size());
+ assertEquals("root", matchingRoles.getResult().iterator().next().getName());
+ assertEquals(1L, matchingRoles.getResult().iterator().next().getId());
}
@Test
- public void searchUserByResourceName() throws InvalidSearchConditionException {
- ResourceCond ws2 = new ResourceCond();
- ws2.setResourceName("ws-target-resource2");
-
- ResourceCond ws1 = new ResourceCond();
- ws1.setResourceName(RESOURCE_NAME_MAPPINGS2);
-
- NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getNotLeafCond(ws2), NodeCond.getLeafCond(ws1));
-
- assertTrue(searchCondition.isValid());
-
- List<UserTO> matchedUsers = userService.search(searchCondition);
+ public void searchUserByResourceName() {
+ PagedResult<UserTO> matchedUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().hasResources(RESOURCE_NAME_MAPPINGS2).query());
assertNotNull(matchedUsers);
- assertFalse(matchedUsers.isEmpty());
+ assertFalse(matchedUsers.getResult().isEmpty());
- Set<Long> userIds = new HashSet<Long>(matchedUsers.size());
- for (UserTO user : matchedUsers) {
+ Set<Long> userIds = new HashSet<Long>(matchedUsers.getResult().size());
+ for (UserTO user : matchedUsers.getResult()) {
userIds.add(user.getId());
}
@@ -155,105 +106,67 @@ public class SearchTestITCase extends Ab
}
@Test
- public void paginatedSearch() throws InvalidSearchConditionException {
+ public void paginatedSearch() {
// LIKE
- AttributeCond fullnameLeafCond1 = new AttributeCond(AttributeCond.Type.LIKE);
- fullnameLeafCond1.setSchema("fullname");
- fullnameLeafCond1.setExpression("%o%");
-
- AttributeCond fullnameLeafCond2 = new AttributeCond(AttributeCond.Type.LIKE);
- fullnameLeafCond2.setSchema("fullname");
- fullnameLeafCond2.setExpression("%i%");
-
- NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getLeafCond(fullnameLeafCond1), NodeCond.getLeafCond(
- fullnameLeafCond2));
-
- assertTrue(searchCondition.isValid());
-
- List<UserTO> matchedUsers = userService.search(searchCondition, 1, 2);
+ PagedResult<UserTO> matchedUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().
+ is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query(), 1, 2);
assertNotNull(matchedUsers);
- assertFalse(matchedUsers.isEmpty());
- for (UserTO user : matchedUsers) {
+ assertFalse(matchedUsers.getResult().isEmpty());
+ for (UserTO user : matchedUsers.getResult()) {
assertNotNull(user);
}
// ISNULL
- AttributeCond isNullCond = new AttributeCond(AttributeCond.Type.ISNULL);
- isNullCond.setSchema("loginDate");
- searchCondition = NodeCond.getLeafCond(isNullCond);
-
- matchedUsers = userService.search(searchCondition, 1, 2);
+ matchedUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().isNull("loginDate").query(), 1, 2);
assertNotNull(matchedUsers);
- assertFalse(matchedUsers.isEmpty());
- Set<Long> userIds = new HashSet<Long>(matchedUsers.size());
- for (UserTO user : matchedUsers) {
+ assertFalse(matchedUsers.getResult().isEmpty());
+ Set<Long> userIds = new HashSet<Long>(matchedUsers.getResult().size());
+ for (UserTO user : matchedUsers.getResult()) {
userIds.add(user.getId());
}
assertEquals(2, userIds.size());
}
@Test
- public void searchCount() throws InvalidSearchConditionException {
- AttributeCond isNullCond = new AttributeCond(AttributeCond.Type.ISNULL);
- isNullCond.setSchema("loginDate");
- NodeCond searchCond = NodeCond.getLeafCond(isNullCond);
-
- Integer count = userService.searchCount(searchCond);
- assertNotNull(count);
- assertTrue(count > 0);
+ public void searchByBooleanAttributableCond() {
+ final PagedResult<RoleTO> matchingRoles = roleService.search(
+ SyncopeClient.getSearchConditionBuilder().is("inheritAttrs").equalTo("true").query());
+ assertNotNull(matchingRoles);
+ assertFalse(matchingRoles.getResult().isEmpty());
}
@Test
- public void searchByBooleanAttributableCond() throws InvalidSearchConditionException {
- final AttributableCond cond = new AttributableCond(AttributableCond.Type.EQ);
- cond.setSchema("inheritAttrs");
- cond.setExpression("true");
-
- final NodeCond searchCondition = NodeCond.getLeafCond(cond);
-
- final List<RoleTO> matchingRoles = roleService.search(searchCondition);
+ public void searchByEntitlement() {
+ final PagedResult<RoleTO> matchingRoles = roleService.search(
+ SyncopeClient.getSearchConditionBuilder().hasEntitlements("USER_LIST", "USER_READ").query());
assertNotNull(matchingRoles);
- assertFalse(matchingRoles.isEmpty());
+ assertFalse(matchingRoles.getResult().isEmpty());
}
@Test
- public void searchByEntitlement() throws InvalidSearchConditionException {
- final EntitlementCond userListCond = new EntitlementCond();
- userListCond.setExpression("USER_LIST");
-
- final EntitlementCond userReadcond = new EntitlementCond();
- userReadcond.setExpression("USER_READ");
+ public void searchByRelationshipAttributableCond() {
+ final PagedResult<RoleTO> matchingRoles = roleService.search(SyncopeClient.getSearchConditionBuilder().
+ isNotNull("passwordPolicy").and("userOwner").equalTo(5).query());
- final NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getLeafCond(userListCond),
- NodeCond.getLeafCond(userReadcond));
- assertTrue(searchCondition.isValid());
-
- final List<RoleTO> matchingRoles = roleService.search(searchCondition);
assertNotNull(matchingRoles);
- assertFalse(matchingRoles.isEmpty());
+ assertEquals(1, matchingRoles.getResult().size());
+ assertEquals("director", matchingRoles.getResult().iterator().next().getName());
+ assertEquals(6L, matchingRoles.getResult().iterator().next().getId());
}
@Test
- public void searchByRelationshipAttributableCond() throws InvalidSearchConditionException {
- final AttributableCond userOwnerCond = new AttributableCond(AttributableCond.Type.EQ);
- userOwnerCond.setSchema("userOwner");
- userOwnerCond.setExpression("5");
-
- final AttributableCond ppolicyCond = new AttributableCond(AttributableCond.Type.ISNOTNULL);
- ppolicyCond.setSchema("passwordPolicy");
-
- final NodeCond searchCondition = NodeCond.getAndCond(NodeCond.getLeafCond(userOwnerCond),
- NodeCond.getLeafCond(ppolicyCond));
-
- assertTrue(searchCondition.isValid());
-
- final List<RoleTO> matchingRoles = roleService.search(searchCondition);
+ public void nested() {
+ PagedResult<UserTO> matchedUsers = userService.search(
+ "((fullname==*o*,fullname==*i*);$resources!=ws-target-resource-1)", 1, 2);
+ assertNotNull(matchedUsers);
- assertNotNull(matchingRoles);
- assertEquals(1, matchingRoles.size());
- assertEquals("director", matchingRoles.iterator().next().getName());
- assertEquals(6L, matchingRoles.iterator().next().getId());
+ assertFalse(matchedUsers.getResult().isEmpty());
+ for (UserTO user : matchedUsers.getResult()) {
+ assertNotNull(user);
+ }
}
}
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/TaskTestITCase.java Mon Dec 16 11:04:52 2013
@@ -28,17 +28,13 @@ import static org.junit.Assert.fail;
import java.util.ArrayList;
import java.util.List;
import javax.ws.rs.core.Response;
+import org.apache.syncope.client.SyncopeClient;
import org.apache.syncope.common.mod.UserMod;
-import org.apache.syncope.common.search.AttributableCond;
-import org.apache.syncope.common.search.AttributeCond;
-import org.apache.syncope.common.search.MembershipCond;
-import org.apache.syncope.common.search.NodeCond;
-import org.apache.syncope.common.services.InvalidSearchConditionException;
import org.apache.syncope.common.services.NotificationService;
import org.apache.syncope.common.services.TaskService;
import org.apache.syncope.common.to.AttributeTO;
-import org.apache.syncope.common.to.BulkAction;
-import org.apache.syncope.common.to.JobClassTO;
+import org.apache.syncope.common.reqres.BulkAction;
+import org.apache.syncope.common.wrap.JobClass;
import org.apache.syncope.common.to.MembershipTO;
import org.apache.syncope.common.to.NotificationTO;
import org.apache.syncope.common.to.NotificationTaskTO;
@@ -46,17 +42,18 @@ import org.apache.syncope.common.to.Prop
import org.apache.syncope.common.to.ReportExecTO;
import org.apache.syncope.common.to.RoleTO;
import org.apache.syncope.common.to.SchedTaskTO;
-import org.apache.syncope.common.to.SyncActionClassTO;
+import org.apache.syncope.common.wrap.SyncActionClass;
import org.apache.syncope.common.to.SyncPolicyTO;
import org.apache.syncope.common.to.SyncTaskTO;
import org.apache.syncope.common.to.TaskExecTO;
import org.apache.syncope.common.to.AbstractTaskTO;
+import org.apache.syncope.common.reqres.PagedResult;
import org.apache.syncope.common.to.UserTO;
import org.apache.syncope.common.types.IntMappingType;
import org.apache.syncope.common.types.PropagationTaskExecStatus;
import org.apache.syncope.common.types.TaskType;
import org.apache.syncope.common.types.TraceLevel;
-import org.apache.syncope.common.validation.SyncopeClientException;
+import org.apache.syncope.common.SyncopeClientException;
import org.apache.syncope.core.sync.TestSyncActions;
import org.apache.syncope.core.sync.TestSyncRule;
import org.apache.syncope.core.sync.impl.SyncJob;
@@ -91,14 +88,14 @@ public class TaskTestITCase extends Abst
@Test
public void getJobClasses() {
- List<JobClassTO> jobClasses = taskService.getJobClasses();
+ List<JobClass> jobClasses = taskService.getJobClasses();
assertNotNull(jobClasses);
assertFalse(jobClasses.isEmpty());
}
@Test
public void getSyncActionsClasses() {
- List<SyncActionClassTO> actions = taskService.getSyncActionsClasses();
+ List<SyncActionClass> actions = taskService.getSyncActionsClasses();
assertNotNull(actions);
assertFalse(actions.isEmpty());
}
@@ -150,48 +147,41 @@ public class TaskTestITCase extends Abst
}
@Test
- public void count() {
- Integer count = taskService.count(TaskType.PROPAGATION);
- assertNotNull(count);
- assertTrue(count > 0);
- }
-
- @Test
public void list() {
- List<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
+ PagedResult<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
- for (AbstractTaskTO task : tasks) {
+ assertFalse(tasks.getResult().isEmpty());
+ for (AbstractTaskTO task : tasks.getResult()) {
assertNotNull(task);
}
}
@Test
public void paginatedList() {
- List<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION, 1, 2);
+ PagedResult<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION, 1, 2);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
- assertEquals(2, tasks.size());
+ assertFalse(tasks.getResult().isEmpty());
+ assertEquals(2, tasks.getResult().size());
- for (AbstractTaskTO task : tasks) {
+ for (AbstractTaskTO task : tasks.getResult()) {
assertNotNull(task);
}
tasks = taskService.list(TaskType.PROPAGATION, 2, 2);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- for (AbstractTaskTO task : tasks) {
+ for (AbstractTaskTO task : tasks.getResult()) {
assertNotNull(task);
}
tasks = taskService.list(TaskType.PROPAGATION, 1000, 2);
assertNotNull(tasks);
- assertTrue(tasks.isEmpty());
+ assertTrue(tasks.getResult().isEmpty());
}
@Test
@@ -261,7 +251,7 @@ public class TaskTestITCase extends Abst
// -----------------------------
try {
- int usersPre = userService.count();
+ int usersPre = userService.list(1, 1).getTotalCount();
assertNotNull(usersPre);
// Update sync task
@@ -318,7 +308,7 @@ public class TaskTestITCase extends Abst
assertEquals("TYPE_8", userTO.getAttrMap().get("type").getValues().get(0));
// check for sync results
- int usersPost = userService.count();
+ int usersPost = userService.list(1, 1).getTotalCount();
assertNotNull(usersPost);
assertEquals(usersPre + 9, usersPost);
@@ -386,9 +376,7 @@ public class TaskTestITCase extends Abst
}
@Test
- public void reconcileFromLDAP()
- throws InvalidSearchConditionException {
-
+ public void reconcileFromLDAP() {
// Update sync task
SyncTaskTO task = taskService.read(11L);
assertNotNull(task);
@@ -423,37 +411,33 @@ public class TaskTestITCase extends Abst
assertTrue(PropagationTaskExecStatus.valueOf(status).isSuccessful());
// 2. verify that synchronized role is found, with expected attributes
- final AttributableCond rolenameLeafCond = new AttributableCond(AttributableCond.Type.EQ);
- rolenameLeafCond.setSchema("name");
- rolenameLeafCond.setExpression("testLDAPGroup");
- final List<RoleTO> matchingRoles = roleService.search(NodeCond.getLeafCond(rolenameLeafCond));
+ final PagedResult<RoleTO> matchingRoles = roleService.search(
+ SyncopeClient.getSearchConditionBuilder().is("name").equalTo("testLDAPGroup").query());
assertNotNull(matchingRoles);
- assertEquals(1, matchingRoles.size());
+ assertEquals(1, matchingRoles.getResult().size());
- final AttributableCond usernameLeafCond = new AttributableCond(AttributeCond.Type.EQ);
- usernameLeafCond.setSchema("username");
- usernameLeafCond.setExpression("syncFromLDAP");
- final List<UserTO> matchingUsers = userService.search(NodeCond.getLeafCond(usernameLeafCond));
+ final PagedResult<UserTO> matchingUsers = userService.search(
+ SyncopeClient.getSearchConditionBuilder().is("username").equalTo("syncFromLDAP").query());
assertNotNull(matchingUsers);
- assertEquals(1, matchingUsers.size());
+ assertEquals(1, matchingUsers.getResult().size());
// Check for SYNCOPE-436
- assertEquals("syncFromLDAP", matchingUsers.get(0).getVirAttrMap().get("virtualReadOnly").getValues().get(0));
+ assertEquals("syncFromLDAP", matchingUsers.getResult().get(0).getVirAttrMap().
+ get("virtualReadOnly").getValues().get(0));
- final RoleTO roleTO = matchingRoles.iterator().next();
+ final RoleTO roleTO = matchingRoles.getResult().iterator().next();
assertNotNull(roleTO);
assertEquals("testLDAPGroup", roleTO.getName());
assertEquals(8L, roleTO.getParent());
assertEquals("true", roleTO.getAttrMap().get("show").getValues().get(0));
- assertEquals(matchingUsers.iterator().next().getId(), (long) roleTO.getUserOwner());
+ assertEquals(matchingUsers.getResult().iterator().next().getId(), (long) roleTO.getUserOwner());
assertNull(roleTO.getRoleOwner());
// 3. verify that LDAP group membership is propagated as Syncope role membership
- final MembershipCond membershipCond = new MembershipCond();
- membershipCond.setRoleId(roleTO.getId());
- final List<UserTO> members = userService.search(NodeCond.getLeafCond(membershipCond));
+ final PagedResult<UserTO> members = userService.search(
+ SyncopeClient.getSearchConditionBuilder().hasRoles(roleTO.getId()).query());
assertNotNull(members);
- assertEquals(1, members.size());
+ assertEquals(1, members.getResult().size());
}
@Test
@@ -535,11 +519,11 @@ public class TaskTestITCase extends Abst
}
private NotificationTaskTO findNotificationTaskBySender(final String sender) {
- List<NotificationTaskTO> tasks = taskService.list(TaskType.NOTIFICATION);
+ PagedResult<NotificationTaskTO> tasks = taskService.list(TaskType.NOTIFICATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
NotificationTaskTO taskTO = null;
- for (NotificationTaskTO task : tasks) {
+ for (NotificationTaskTO task : tasks.getResult()) {
if (sender.equals(task.getSender())) {
taskTO = task;
}
@@ -553,13 +537,9 @@ public class TaskTestITCase extends Abst
notification.setTraceLevel(TraceLevel.FAILURES);
notification.getEvents().add("[REST]:[UserController]:[]:[create]:[SUCCESS]");
- MembershipCond membCond = new MembershipCond();
- membCond.setRoleId(7L);
- notification.setAbout(NodeCond.getLeafCond(membCond));
-
- membCond = new MembershipCond();
- membCond.setRoleId(8L);
- notification.setRecipients(NodeCond.getLeafCond(membCond));
+ notification.setAbout(SyncopeClient.getSearchConditionBuilder().hasRoles(7L).query());
+
+ notification.setRecipients(SyncopeClient.getSearchConditionBuilder().hasRoles(8L).query());
notification.setSelfAsRecipient(true);
notification.setRecipientAttrName("email");
@@ -905,7 +885,7 @@ public class TaskTestITCase extends Abst
@Test
public void bulkAction() {
- final List<PropagationTaskTO> before = taskService.list(TaskType.PROPAGATION);
+ final PagedResult<PropagationTaskTO> before = taskService.list(TaskType.PROPAGATION);
// create user with testdb resource
final UserTO userTO = UserTestITCase.getUniqueSampleTO("taskBulk@apache.org");
@@ -913,9 +893,9 @@ public class TaskTestITCase extends Abst
createUser(userTO);
final List<PropagationTaskTO> after = new ArrayList<PropagationTaskTO>(
- taskService.<PropagationTaskTO>list(TaskType.PROPAGATION));
+ taskService.<PropagationTaskTO>list(TaskType.PROPAGATION).getResult());
- after.removeAll(before);
+ after.removeAll(before.getResult());
assertFalse(after.isEmpty());
@@ -928,6 +908,6 @@ public class TaskTestITCase extends Abst
taskService.bulk(bulkAction);
- assertFalse(taskService.list(TaskType.PROPAGATION).containsAll(after));
+ assertFalse(taskService.list(TaskType.PROPAGATION).getResult().containsAll(after));
}
}
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserSelfTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserSelfTestITCase.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserSelfTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserSelfTestITCase.java Mon Dec 16 11:04:52 2013
@@ -47,7 +47,7 @@ import org.apache.syncope.common.types.A
import org.apache.syncope.common.types.ClientExceptionType;
import org.apache.syncope.common.types.Preference;
import org.apache.syncope.common.types.RESTHeaders;
-import org.apache.syncope.common.validation.SyncopeClientException;
+import org.apache.syncope.common.SyncopeClientException;
import org.apache.syncope.core.workflow.ActivitiDetector;
import org.junit.Assume;
import org.junit.FixMethodOrder;
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserTestITCase.java Mon Dec 16 11:04:52 2013
@@ -43,17 +43,17 @@ import org.apache.syncope.common.service
import org.apache.syncope.common.services.ResourceService;
import org.apache.syncope.common.services.UserSelfService;
import org.apache.syncope.common.to.AttributeTO;
-import org.apache.syncope.common.to.BulkAction;
-import org.apache.syncope.common.to.BulkActionRes;
-import org.apache.syncope.common.to.BulkActionRes.Status;
+import org.apache.syncope.common.reqres.BulkAction;
+import org.apache.syncope.common.reqres.BulkActionResult;
+import org.apache.syncope.common.reqres.BulkActionResult.Status;
import org.apache.syncope.common.to.ConfigurationTO;
import org.apache.syncope.common.to.ConnObjectTO;
import org.apache.syncope.common.to.MappingItemTO;
import org.apache.syncope.common.to.MembershipTO;
import org.apache.syncope.common.to.PasswordPolicyTO;
-import org.apache.syncope.common.to.PropagationStatusTO;
+import org.apache.syncope.common.to.PropagationStatus;
import org.apache.syncope.common.to.PropagationTaskTO;
-import org.apache.syncope.common.to.ResourceNameTO;
+import org.apache.syncope.common.wrap.ResourceName;
import org.apache.syncope.common.to.ResourceTO;
import org.apache.syncope.common.to.RoleTO;
import org.apache.syncope.common.to.UserTO;
@@ -66,7 +66,7 @@ import org.apache.syncope.common.types.R
import org.apache.syncope.common.types.TaskType;
import org.apache.syncope.common.util.AttributableOperations;
import org.apache.syncope.common.util.CollectionWrapper;
-import org.apache.syncope.common.validation.SyncopeClientException;
+import org.apache.syncope.common.SyncopeClientException;
import org.apache.syncope.core.persistence.beans.user.SyncopeUser;
import org.apache.syncope.core.workflow.ActivitiDetector;
import org.identityconnectors.framework.common.objects.OperationalAttributes;
@@ -80,6 +80,7 @@ import org.apache.commons.lang3.StringUt
import org.apache.cxf.helpers.IOUtils;
import org.apache.syncope.client.SyncopeClient;
import org.apache.syncope.common.services.UserService;
+import org.apache.syncope.common.reqres.PagedResult;
import org.apache.syncope.common.types.Preference;
import org.apache.syncope.common.types.RESTHeaders;
import org.identityconnectors.framework.common.objects.Name;
@@ -138,12 +139,12 @@ public class UserTestITCase extends Abst
@SuppressWarnings("unchecked")
public void createUserWithNoPropagation() {
// get task list
- List<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
+ PagedResult<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- long maxId = getMaxTaskId(tasks);
+ long maxId = getMaxTaskId(tasks.getResult());
// create a new user
UserTO userTO = getUniqueSampleTO("xxx@xxx.xxx");
@@ -156,9 +157,9 @@ public class UserTestITCase extends Abst
// get the new task list
tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- long newMaxId = getMaxTaskId(tasks);
+ long newMaxId = getMaxTaskId(tasks.getResult());
assertTrue(newMaxId > maxId);
@@ -365,12 +366,12 @@ public class UserTestITCase extends Abst
@SuppressWarnings("unchecked")
public void create() {
// get task list
- List<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
+ PagedResult<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- long maxId = getMaxTaskId(tasks);
+ long maxId = getMaxTaskId(tasks.getResult());
PropagationTaskTO taskTO = taskService.read(maxId);
assertNotNull(taskTO);
@@ -423,9 +424,9 @@ public class UserTestITCase extends Abst
tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- long newMaxId = getMaxTaskId(tasks);
+ long newMaxId = getMaxTaskId(tasks.getResult());
// default configuration for ws-target-resource2:
// only failed executions have to be registered
@@ -567,44 +568,35 @@ public class UserTestITCase extends Abst
}
@Test
- public void count() {
- Integer count = userService.count();
- assertNotNull(count);
- assertTrue(count > 0);
- }
-
- @Test
public void list() {
- List<UserTO> users = userService.list();
+ PagedResult<UserTO> users = userService.list();
assertNotNull(users);
- assertFalse(users.isEmpty());
- for (UserTO user : users) {
+ assertFalse(users.getResult().isEmpty());
+
+ for (UserTO user : users.getResult()) {
assertNotNull(user);
}
}
@Test
public void paginatedList() {
- List<UserTO> users = userService.list(1, 2);
-
+ PagedResult<UserTO> users = userService.list(1, 2);
assertNotNull(users);
- assertFalse(users.isEmpty());
- assertEquals(2, users.size());
+ assertFalse(users.getResult().isEmpty());
+ assertEquals(2, users.getResult().size());
- for (UserTO user : users) {
+ for (UserTO user : users.getResult()) {
assertNotNull(user);
}
users = userService.list(2, 2);
-
assertNotNull(users);
- assertFalse(users.isEmpty());
- assertEquals(2, users.size());
+ assertFalse(users.getResult().isEmpty());
+ assertEquals(2, users.getResult().size());
users = userService.list(100, 2);
-
assertNotNull(users);
- assertTrue(users.isEmpty());
+ assertTrue(users.getResult().isEmpty());
}
@Test
@@ -730,11 +722,9 @@ public class UserTestITCase extends Abst
}
@Test
- @SuppressWarnings("unchecked")
public void updatePasswordOnly() {
- List<PropagationTaskTO> beforeTasks = taskService.list(TaskType.PROPAGATION);
- assertNotNull(beforeTasks);
- assertFalse(beforeTasks.isEmpty());
+ int beforeTasks = taskService.list(TaskType.PROPAGATION, 1, 1).getTotalCount();
+ assertFalse(beforeTasks <= 0);
UserTO userTO = getUniqueSampleTO("pwdonly@t.com");
MembershipTO membershipTO = new MembershipTO();
@@ -753,27 +743,22 @@ public class UserTestITCase extends Abst
// check for changePwdDate
assertNotNull(userTO.getChangePwdDate());
- SyncopeUser passwordTestUser = new SyncopeUser();
- passwordTestUser.setPassword("newPassword123", CipherAlgorithm.SHA1, 0);
- assertEquals(passwordTestUser.getPassword(), userTO.getPassword());
-
- List<PropagationTaskTO> afterTasks = taskService.list(TaskType.PROPAGATION);
- assertNotNull(afterTasks);
- assertFalse(afterTasks.isEmpty());
+ int afterTasks = taskService.list(TaskType.PROPAGATION, 1, 1).getTotalCount();
+ assertFalse(beforeTasks <= 0);
- assertTrue(beforeTasks.size() < afterTasks.size());
+ assertTrue(beforeTasks < afterTasks);
}
@SuppressWarnings("unchecked")
@Test
public void verifyTaskRegistration() {
// get task list
- List<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
+ PagedResult<PropagationTaskTO> tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- long maxId = getMaxTaskId(tasks);
+ long maxId = getMaxTaskId(tasks.getResult());
// --------------------------------------
// Create operation
@@ -793,9 +778,9 @@ public class UserTestITCase extends Abst
tasks = taskService.list(TaskType.PROPAGATION);
assertNotNull(tasks);
- assertFalse(tasks.isEmpty());
+ assertFalse(tasks.getResult().isEmpty());
- long newMaxId = getMaxTaskId(tasks);
+ long newMaxId = getMaxTaskId(tasks.getResult());
// default configuration for ws-target-resource2:
// only failed executions have to be registered
@@ -818,7 +803,7 @@ public class UserTestITCase extends Abst
tasks = taskService.list(TaskType.PROPAGATION);
maxId = newMaxId;
- newMaxId = getMaxTaskId(tasks);
+ newMaxId = getMaxTaskId(tasks.getResult());
// default configuration for ws-target-resource2:
// all update executions have to be registered
@@ -838,7 +823,7 @@ public class UserTestITCase extends Abst
tasks = taskService.list(TaskType.PROPAGATION);
maxId = newMaxId;
- newMaxId = getMaxTaskId(tasks);
+ newMaxId = getMaxTaskId(tasks.getResult());
// default configuration for ws-target-resource2: no delete executions have to be registered
// --> no more tasks/executions should be added
@@ -1091,7 +1076,7 @@ public class UserTestITCase extends Abst
userTO = updateUser(userMod);
assertNotNull(userTO);
- final List<PropagationStatusTO> propagations = userTO.getPropagationStatusTOs();
+ final List<PropagationStatus> propagations = userTO.getPropagationStatusTOs();
assertNotNull(propagations);
assertEquals(1, propagations.size());
@@ -1115,7 +1100,7 @@ public class UserTestITCase extends Abst
userTO = createUser(userTO);
assertNotNull(userTO);
- final List<PropagationStatusTO> propagations = userTO.getPropagationStatusTOs();
+ final List<PropagationStatus> propagations = userTO.getPropagationStatusTOs();
assertNotNull(propagations);
assertEquals(1, propagations.size());
@@ -1583,10 +1568,10 @@ public class UserTestITCase extends Abst
assertNotNull(userTO);
// 5. verify that propagation was successful
- List<PropagationStatusTO> props = userTO.getPropagationStatusTOs();
+ List<PropagationStatus> props = userTO.getPropagationStatusTOs();
assertNotNull(props);
assertEquals(1, props.size());
- PropagationStatusTO prop = props.iterator().next();
+ PropagationStatus prop = props.iterator().next();
assertNotNull(prop);
assertEquals(RESOURCE_NAME_WS1, prop.getResource());
assertEquals(PropagationTaskExecStatus.SUBMITTED, prop.getStatus());
@@ -1614,10 +1599,10 @@ public class UserTestITCase extends Abst
assertNotNull(userTO);
// 3. verify that propagation was successful
- List<PropagationStatusTO> props = userTO.getPropagationStatusTOs();
+ List<PropagationStatus> props = userTO.getPropagationStatusTOs();
assertNotNull(props);
assertEquals(1, props.size());
- PropagationStatusTO prop = props.iterator().next();
+ PropagationStatus prop = props.iterator().next();
assertNotNull(prop);
assertEquals(RESOURCE_NAME_LDAP, prop.getResource());
assertEquals(PropagationTaskExecStatus.SUCCESS, prop.getStatus());
@@ -1675,7 +1660,7 @@ public class UserTestITCase extends Abst
assertEquals(11, bulkAction.getTargets().size());
bulkAction.setOperation(BulkAction.Type.SUSPEND);
- BulkActionRes res = userService.bulk(bulkAction);
+ BulkActionResult res = userService.bulk(bulkAction);
assertEquals(10, res.getResultByStatus(Status.SUCCESS).size());
assertEquals(1, res.getResultByStatus(Status.FAILURE).size());
assertEquals("suspended", userService.read(
@@ -1870,7 +1855,7 @@ public class UserTestITCase extends Abst
actual = userService.associate(actual.getId(),
ResourceAssociationActionType.UNLINK,
- CollectionWrapper.wrap(RESOURCE_NAME_CSV, ResourceNameTO.class)).
+ CollectionWrapper.wrap(RESOURCE_NAME_CSV, ResourceName.class)).
readEntity(UserTO.class);
assertNotNull(actual);
assertTrue(actual.getResources().isEmpty());
@@ -1904,7 +1889,7 @@ public class UserTestITCase extends Abst
actual = userService.associate(actual.getId(),
ResourceAssociationActionType.UNASSIGN,
- CollectionWrapper.wrap(RESOURCE_NAME_CSV, ResourceNameTO.class)).
+ CollectionWrapper.wrap(RESOURCE_NAME_CSV, ResourceName.class)).
readEntity(UserTO.class);
assertNotNull(actual);
assertTrue(actual.getResources().isEmpty());
@@ -1940,7 +1925,7 @@ public class UserTestITCase extends Abst
actual = userService.associate(actual.getId(),
ResourceAssociationActionType.DEPROVISION,
- CollectionWrapper.wrap(RESOURCE_NAME_CSV, ResourceNameTO.class)).
+ CollectionWrapper.wrap(RESOURCE_NAME_CSV, ResourceName.class)).
readEntity(UserTO.class);
assertNotNull(actual);
assertFalse(actual.getResources().isEmpty());
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserWorkflowTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserWorkflowTestITCase.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserWorkflowTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/UserWorkflowTestITCase.java Mon Dec 16 11:04:52 2013
@@ -36,7 +36,7 @@ import org.apache.syncope.common.to.User
import org.apache.syncope.common.to.WorkflowFormPropertyTO;
import org.apache.syncope.common.to.WorkflowFormTO;
import org.apache.syncope.common.types.ClientExceptionType;
-import org.apache.syncope.common.validation.SyncopeClientException;
+import org.apache.syncope.common.SyncopeClientException;
import org.apache.syncope.core.workflow.ActivitiDetector;
import org.junit.Assume;
import org.junit.FixMethodOrder;
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/VirtualSchemaTestITCase.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/VirtualSchemaTestITCase.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/VirtualSchemaTestITCase.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/VirtualSchemaTestITCase.java Mon Dec 16 11:04:52 2013
@@ -32,7 +32,7 @@ import org.apache.syncope.common.types.A
import org.apache.syncope.common.types.EntityViolationType;
import org.apache.syncope.common.types.SchemaType;
import org.apache.syncope.common.types.ClientExceptionType;
-import org.apache.syncope.common.validation.SyncopeClientException;
+import org.apache.syncope.common.SyncopeClientException;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
Added: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java?rev=1551172&view=auto
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java (added)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java Mon Dec 16 11:04:52 2013
@@ -0,0 +1,165 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.apache.syncope.core.rest.data;
+
+import static org.junit.Assert.assertEquals;
+
+import org.apache.syncope.client.SyncopeClient;
+import org.apache.syncope.common.search.SpecialAttr;
+import org.apache.syncope.core.AbstractNonDAOTest;
+import org.apache.syncope.core.persistence.dao.search.AttributableCond;
+import org.apache.syncope.core.persistence.dao.search.AttributeCond;
+import org.apache.syncope.core.persistence.dao.search.EntitlementCond;
+import org.apache.syncope.core.persistence.dao.search.MembershipCond;
+import org.apache.syncope.core.persistence.dao.search.ResourceCond;
+import org.apache.syncope.core.persistence.dao.search.SearchCond;
+import org.junit.Test;
+
+public class SearchCondConverterTest extends AbstractNonDAOTest {
+
+ @Test
+ public void eq() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("username").equalTo("rossini").query();
+ assertEquals("username==rossini", fiqlExpression);
+
+ AttributableCond attrCond = new AttributableCond(AttributeCond.Type.EQ);
+ attrCond.setSchema("username");
+ attrCond.setExpression("rossini");
+ SearchCond simpleCond = SearchCond.getLeafCond(attrCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void like() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("username").equalTo("ros*").query();
+ assertEquals("username==ros*", fiqlExpression);
+
+ AttributeCond attrCond = new AttributableCond(AttributeCond.Type.LIKE);
+ attrCond.setSchema("username");
+ attrCond.setExpression("ros%");
+ SearchCond simpleCond = SearchCond.getLeafCond(attrCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void isNull() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("loginDate").nullValue().query();
+ assertEquals("loginDate==" + SpecialAttr.NULL, fiqlExpression);
+
+ AttributeCond attrCond = new AttributeCond(AttributeCond.Type.ISNULL);
+ attrCond.setSchema("loginDate");
+ SearchCond simpleCond = SearchCond.getLeafCond(attrCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void isNotNull() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().is("loginDate").notNullValue().query();
+ assertEquals("loginDate!=" + SpecialAttr.NULL, fiqlExpression);
+
+ AttributeCond attrCond = new AttributeCond(AttributeCond.Type.ISNOTNULL);
+ attrCond.setSchema("loginDate");
+ SearchCond simpleCond = SearchCond.getLeafCond(attrCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void roles() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().hasRoles(1L).query();
+ assertEquals(SpecialAttr.ROLES + "==1", fiqlExpression);
+
+ MembershipCond membCond = new MembershipCond();
+ membCond.setRoleId(1L);
+ SearchCond simpleCond = SearchCond.getLeafCond(membCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void resources() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().hasResources("resource-ldap").query();
+ assertEquals(SpecialAttr.RESOURCES + "==resource-ldap", fiqlExpression);
+
+ ResourceCond resCond = new ResourceCond();
+ resCond.setResourceName("resource-ldap");
+ SearchCond simpleCond = SearchCond.getLeafCond(resCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void entitlements() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().hasEntitlements("USER_LIST").query();
+ assertEquals(SpecialAttr.ENTITLEMENTS + "==USER_LIST", fiqlExpression);
+
+ EntitlementCond entCond = new EntitlementCond();
+ entCond.setExpression("USER_LIST");
+ SearchCond simpleCond = SearchCond.getLeafCond(entCond);
+
+ assertEquals(simpleCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void and() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().
+ is("fullname").equalTo("*o*").and("fullname").equalTo("*i*").query();
+ assertEquals("fullname==*o*;fullname==*i*", fiqlExpression);
+
+ AttributeCond fullnameLeafCond1 = new AttributeCond(AttributeCond.Type.LIKE);
+ fullnameLeafCond1.setSchema("fullname");
+ fullnameLeafCond1.setExpression("%o%");
+ AttributeCond fullnameLeafCond2 = new AttributeCond(AttributeCond.Type.LIKE);
+ fullnameLeafCond2.setSchema("fullname");
+ fullnameLeafCond2.setExpression("%i%");
+ SearchCond andCond = SearchCond.getAndCond(
+ SearchCond.getLeafCond(fullnameLeafCond1),
+ SearchCond.getLeafCond(fullnameLeafCond2));
+
+ assertEquals(andCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+ @Test
+ public void or() {
+ String fiqlExpression = SyncopeClient.getSearchConditionBuilder().
+ is("fullname").equalTo("*o*", "*i*", "*ini").query();
+ assertEquals("fullname==*o*,fullname==*i*,fullname==*ini", fiqlExpression);
+
+ AttributeCond fullnameLeafCond1 = new AttributeCond(AttributeCond.Type.LIKE);
+ fullnameLeafCond1.setSchema("fullname");
+ fullnameLeafCond1.setExpression("%o%");
+ AttributeCond fullnameLeafCond2 = new AttributeCond(AttributeCond.Type.LIKE);
+ fullnameLeafCond2.setSchema("fullname");
+ fullnameLeafCond2.setExpression("%i%");
+ AttributeCond fullnameLeafCond3 = new AttributeCond(AttributeCond.Type.LIKE);
+ fullnameLeafCond3.setSchema("fullname");
+ fullnameLeafCond3.setExpression("%ini");
+ SearchCond orCond = SearchCond.getOrCond(
+ SearchCond.getLeafCond(fullnameLeafCond1),
+ SearchCond.getOrCond(
+ SearchCond.getLeafCond(fullnameLeafCond2),
+ SearchCond.getLeafCond(fullnameLeafCond3)));
+
+ assertEquals(orCond, SearchCondConverter.convert(fiqlExpression));
+ }
+
+}
Propchange: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Propchange: syncope/trunk/core/src/test/java/org/apache/syncope/core/rest/data/SearchCondConverterTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: syncope/trunk/core/src/test/java/org/apache/syncope/core/sync/TestSyncRule.java
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/java/org/apache/syncope/core/sync/TestSyncRule.java?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/java/org/apache/syncope/core/sync/TestSyncRule.java (original)
+++ syncope/trunk/core/src/test/java/org/apache/syncope/core/sync/TestSyncRule.java Mon Dec 16 11:04:52 2013
@@ -18,19 +18,19 @@
*/
package org.apache.syncope.core.sync;
-import org.apache.syncope.common.search.AttributeCond;
-import org.apache.syncope.common.search.NodeCond;
+import org.apache.syncope.core.persistence.dao.search.AttributeCond;
+import org.apache.syncope.core.persistence.dao.search.SearchCond;
import org.identityconnectors.framework.common.objects.ConnectorObject;
public class TestSyncRule implements SyncCorrelationRule {
@Override
- public NodeCond getSearchCond(ConnectorObject connObj) {
+ public SearchCond getSearchCond(ConnectorObject connObj) {
AttributeCond cond = new AttributeCond();
cond.setSchema("email");
cond.setType(AttributeCond.Type.EQ);
cond.setExpression(connObj.getName().getNameValue());
- return NodeCond.getLeafCond(cond);
+ return SearchCond.getLeafCond(cond);
}
}
Modified: syncope/trunk/core/src/test/resources/content.xml
URL: http://svn.apache.org/viewvc/syncope/trunk/core/src/test/resources/content.xml?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/core/src/test/resources/content.xml (original)
+++ syncope/trunk/core/src/test/resources/content.xml Mon Dec 16 11:04:52 2013
@@ -842,8 +842,8 @@ under the License.
jobClassName="org.apache.syncope.core.sync.impl.SyncJob"/>
<Notification id="1" sender="test@syncope.apache.org" subject="Test subject" template="test" selfAsRecipient="0" traceLevel="ALL"
- xmlAbout="%3Corg.apache.syncope.common.search.NodeCond%3E%0A++%3Ctype%3EAND%3C%2Ftype%3E%0A++%3CleftNodeCond%3E%0A++++%3Ctype%3ELEAF%3C%2Ftype%3E%0A++++%3CattributeCond%3E%0A++++++%3Ctype%3ELIKE%3C%2Ftype%3E%0A++++++%3Cschema%3Efullname%3C%2Fschema%3E%0A++++++%3Cexpression%3E%25o%25%3C%2Fexpression%3E%0A++++%3C%2FattributeCond%3E%0A++%3C%2FleftNodeCond%3E%0A++%3CrightNodeCond%3E%0A++++%3Ctype%3ELEAF%3C%2Ftype%3E%0A++++%3CattributeCond%3E%0A++++++%3Ctype%3ELIKE%3C%2Ftype%3E%0A++++++%3Cschema%3Efullname%3C%2Fschema%3E%0A++++++%3Cexpression%3E%25i%25%3C%2Fexpression%3E%0A++++%3C%2FattributeCond%3E%0A++%3C%2FrightNodeCond%3E%0A%3C%2Forg.apache.syncope.common.search.NodeCond%3E"
- xmlRecipients="%3Corg.apache.syncope.common.search.NodeCond%3E%0A++%3Ctype%3ELEAF%3C%2Ftype%3E%0A++%3CmembershipCond%3E%0A++++%3CroleId%3E7%3C%2FroleId%3E%0A++%3C%2FmembershipCond%3E%0A%3C%2Forg.apache.syncope.common.search.NodeCond%3E"
+ about="fullname==*o*;fullname==*i*"
+ recipients="$roles==7"
recipientAttrType="UserSchema" recipientAttrName="email"/>
<Notification_events Notification_id="1" events="[CUSTOM]:[]:[]:[unexisting1]:[FAILURE]"/>
<Notification_events Notification_id="1" events="[CUSTOM]:[]:[]:[unexisting2]:[SUCCESS]"/>
Modified: syncope/trunk/pom.xml
URL: http://svn.apache.org/viewvc/syncope/trunk/pom.xml?rev=1551172&r1=1551171&r2=1551172&view=diff
==============================================================================
--- syncope/trunk/pom.xml (original)
+++ syncope/trunk/pom.xml Mon Dec 16 11:04:52 2013
@@ -506,9 +506,9 @@ under the License.
</dependency>
<dependency>
- <groupId>javax.validation</groupId>
- <artifactId>validation-api</artifactId>
- <version>1.0.0.GA</version>
+ <groupId>org.apache.geronimo.specs</groupId>
+ <artifactId>geronimo-validation_1.0_spec</artifactId>
+ <version>1.1</version>
</dependency>
<dependency>
<groupId>org.apache.bval</groupId>
@@ -869,10 +869,6 @@ under the License.
<repositories>
<repository>
- <id>activiti</id>
- <url>https://artifacts.alfresco.com/nexus/content/groups/public/</url>
- </repository>
- <repository>
<id>sonatype</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>