mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-06-02 17:35:18 +00:00
- Updated web services, SDK and web client where appropraite - Patch added to migrate existing rules - Entire rule service can now be disabled programmatically - Rule service is now disabled during the patching process - StoreEnum and languageEnum types removed from web service interfaces - Multiple rule types now supported in the repo (but not in the UI) - Removed owning node ref from action and rule .. now calculated from methods on the rule service git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@3464 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
149 lines
4.9 KiB
Java
149 lines
4.9 KiB
Java
/*
|
|
* Copyright (C) 2005 Alfresco, Inc.
|
|
*
|
|
* Licensed under the Mozilla Public License version 1.1
|
|
* with a permitted attribution clause. You may obtain a
|
|
* copy of the License at
|
|
*
|
|
* http://www.alfresco.org/legal/license.txt
|
|
*
|
|
* 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.alfresco.repo.action;
|
|
|
|
import java.util.List;
|
|
|
|
import org.alfresco.service.cmr.action.Action;
|
|
import org.alfresco.service.cmr.action.ActionCondition;
|
|
import org.alfresco.util.GUID;
|
|
|
|
/**
|
|
* @author Roy Wetherall
|
|
*/
|
|
public class ActionImplTest extends BaseParameterizedItemImplTest
|
|
{
|
|
private static final String ID_COND1 = "idCond1";
|
|
private static final String ID_COND2 = "idCond2";
|
|
private static final String ID_COND3 = "idCond3";
|
|
private static final String NAME_COND1 = "nameCond1";
|
|
private static final String NAME_COND2 = "nameCond2";
|
|
private static final String NAME_COND3 = "nameCond3";
|
|
|
|
/**
|
|
* @see org.alfresco.repo.rule.common.RuleItemImplTest#create()
|
|
*/
|
|
@Override
|
|
protected ParameterizedItemImpl create()
|
|
{
|
|
return new ActionImpl(
|
|
null,
|
|
ID,
|
|
NAME,
|
|
this.paramValues);
|
|
}
|
|
|
|
public void testGetRuleActionDefintion()
|
|
{
|
|
Action temp = (Action)create();
|
|
assertEquals(NAME, temp.getActionDefinitionName());
|
|
}
|
|
|
|
public void testSimpleProperties()
|
|
{
|
|
Action action = (Action)create();
|
|
|
|
// Check the default values
|
|
assertFalse(action.getExecuteAsychronously());
|
|
assertNull(action.getCompensatingAction());
|
|
|
|
// Set some values
|
|
action.setTitle("title");
|
|
action.setDescription("description");
|
|
action.setExecuteAsynchronously(true);
|
|
Action compensatingAction = new ActionImpl(null, GUID.generate(), "actionDefintionName", null);
|
|
action.setCompensatingAction(compensatingAction);
|
|
|
|
// Check the values have been set
|
|
assertEquals("title", action.getTitle());
|
|
assertEquals("description", action.getDescription());
|
|
assertTrue(action.getExecuteAsychronously());
|
|
assertEquals(compensatingAction, action.getCompensatingAction());
|
|
}
|
|
|
|
public void testActionConditions()
|
|
{
|
|
ActionCondition cond1 = new ActionConditionImpl(ID_COND1, NAME_COND1, this.paramValues);
|
|
ActionCondition cond2 = new ActionConditionImpl(ID_COND2, NAME_COND2, this.paramValues);
|
|
ActionCondition cond3 = new ActionConditionImpl(ID_COND3, NAME_COND3, this.paramValues);
|
|
|
|
Action action = (Action)create();
|
|
|
|
// Check has no conditions
|
|
assertFalse(action.hasActionConditions());
|
|
List<ActionCondition> noConditions = action.getActionConditions();
|
|
assertNotNull(noConditions);
|
|
assertEquals(0, noConditions.size());
|
|
|
|
// Add the conditions to the action
|
|
action.addActionCondition(cond1);
|
|
action.addActionCondition(cond2);
|
|
action.addActionCondition(cond3);
|
|
|
|
// Check that the conditions are there and in the correct order
|
|
assertTrue(action.hasActionConditions());
|
|
List<ActionCondition> actionConditions = action.getActionConditions();
|
|
assertNotNull(actionConditions);
|
|
assertEquals(3, actionConditions.size());
|
|
int counter = 0;
|
|
for (ActionCondition condition : actionConditions)
|
|
{
|
|
if (counter == 0)
|
|
{
|
|
assertEquals(cond1, condition);
|
|
}
|
|
else if (counter == 1)
|
|
{
|
|
assertEquals(cond2, condition);
|
|
}
|
|
else if (counter == 2)
|
|
{
|
|
assertEquals(cond3, condition);
|
|
}
|
|
counter+=1;
|
|
}
|
|
assertEquals(cond1, action.getActionCondition(0));
|
|
assertEquals(cond2, action.getActionCondition(1));
|
|
assertEquals(cond3, action.getActionCondition(2));
|
|
|
|
// Check remove
|
|
action.removeActionCondition(cond3);
|
|
assertEquals(2, action.getActionConditions().size());
|
|
|
|
// Check set
|
|
action.setActionCondition(1, cond3);
|
|
assertEquals(cond1, action.getActionCondition(0));
|
|
assertEquals(cond3, action.getActionCondition(1));
|
|
|
|
// Check index of
|
|
assertEquals(0, action.indexOfActionCondition(cond1));
|
|
assertEquals(1, action.indexOfActionCondition(cond3));
|
|
|
|
// Test insert
|
|
action.addActionCondition(1, cond2);
|
|
assertEquals(3, action.getActionConditions().size());
|
|
assertEquals(cond1, action.getActionCondition(0));
|
|
assertEquals(cond2, action.getActionCondition(1));
|
|
assertEquals(cond3, action.getActionCondition(2));
|
|
|
|
// Check remote all
|
|
action.removeAllActionConditions();
|
|
assertFalse(action.hasActionConditions());
|
|
assertEquals(0, action.getActionConditions().size());
|
|
}
|
|
}
|