use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasFieldActionsServiceTest method testProcessOldExpressionActionConcatenateTwoCollections.
@Test
public void testProcessOldExpressionActionConcatenateTwoCollections() throws Exception {
DefaultAtlasSession session = mock(DefaultAtlasSession.class);
Field delimiter = new SimpleField();
delimiter.setPath("/delim");
delimiter.setValue("-");
FieldGroup list = new FieldGroup();
list.setPath("/fields<>");
list.setCollectionType(CollectionType.LIST);
Field field1 = new SimpleField();
field1.setPath("/fields<0>");
field1.setValue("one");
list.getField().add(field1);
Field field2 = new SimpleField();
field2.setPath("/fields<1>");
field2.setValue("two");
list.getField().add(field2);
Field field3 = new SimpleField();
field3.setPath("/fields<2>");
field3.setValue("three");
list.getField().add(field3);
FieldGroup list2 = new FieldGroup();
list2.setPath("/fields2<>");
list2.setCollectionType(CollectionType.LIST);
Field field21 = new SimpleField();
field21.setPath("/fields2<0>");
field21.setValue("one");
list2.getField().add(field21);
Field field22 = new SimpleField();
field22.setPath("/fields2<1>");
field22.setValue("two");
list2.getField().add(field22);
Field field23 = new SimpleField();
field23.setPath("/fields2<2>");
field23.setValue("three");
list2.getField().add(field23);
FieldGroup fieldGroup = new FieldGroup();
fieldGroup.getField().add(delimiter);
fieldGroup.getField().add(list);
fieldGroup.getField().add(list2);
Expression action = new Expression();
action.setExpression("concatenate(${0}, true, ${1}, ${2})");
fieldGroup.setActions(new ArrayList<Action>());
fieldGroup.getActions().add(action);
Field answer = fieldActionsService.processActions(session, fieldGroup);
assertEquals("$ATLASMAP", answer.getPath());
assertEquals("one-two-three-one-two-three", answer.getValue());
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasFieldActionsServiceTest method testProcessActionsActionsField.
@Test
public void testProcessActionsActionsField() throws AtlasException {
SimpleField field = new SimpleField();
field.setFieldType(FieldType.COMPLEX);
field.setActions(null);
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
field.setValue(null);
field.setFieldType(FieldType.INTEGER);
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
field.setValue(Integer.valueOf(0));
field.setFieldType(FieldType.INTEGER);
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
field.setActions(new ArrayList<Action>());
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
field.setActions(new ArrayList<Action>());
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
field.getActions().add(new Trim());
field.setValue("testString");
field.setFieldType(FieldType.STRING);
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
field.setValue(Integer.valueOf(8));
field.setFieldType(FieldType.NUMBER);
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasFieldActionsServiceTest method testprocessActionsActionsObjectFieldTypeAtlasConversionException.
@Test
public void testprocessActionsActionsObjectFieldTypeAtlasConversionException() throws AtlasException {
SimpleField field = new SimpleField();
Object value = new Object();
field.setValue(value);
field.setFieldType(FieldType.INTEGER);
ArrayList<Action> actions = new ArrayList<Action>();
actions.add(new Add());
field.setActions(actions);
assertThrows(AtlasConversionException.class, () -> {
fieldActionsService.processActions(mock(AtlasInternalSession.class), field);
});
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasFieldActionsServiceTest method testProcessOldExpressionActionConcatenateCollection.
@Test
public void testProcessOldExpressionActionConcatenateCollection() throws Exception {
DefaultAtlasSession session = mock(DefaultAtlasSession.class);
Field delimiter = new SimpleField();
delimiter.setPath("/delim");
delimiter.setValue("-");
FieldGroup list = new FieldGroup();
list.setPath("/fields<>");
list.setCollectionType(CollectionType.LIST);
Field field1 = new SimpleField();
field1.setPath("/fields<0>");
field1.setValue("one");
list.getField().add(field1);
Field field2 = new SimpleField();
field2.setPath("/fields<1>");
field2.setValue("two");
list.getField().add(field2);
Field field3 = new SimpleField();
field3.setPath("/fields<2>");
field3.setValue("three");
list.getField().add(field3);
FieldGroup fieldGroup = new FieldGroup();
fieldGroup.getField().add(delimiter);
fieldGroup.getField().add(list);
Expression action = new Expression();
action.setExpression("concatenate(${0}, true, capitalize(${1}))");
fieldGroup.setActions(new ArrayList<Action>());
fieldGroup.getActions().add(action);
Field answer = fieldActionsService.processActions(session, fieldGroup);
assertEquals("$ATLASMAP", answer.getPath());
assertEquals("One-Two-Three", answer.getValue());
}
use of io.atlasmap.v2.Action in project atlasmap by atlasmap.
the class DefaultAtlasPreviewContextTest method testProcessPreviewSplit.
@Test
public void testProcessPreviewSplit() throws AtlasException {
Mapping m = new Mapping();
Field source = new SimpleField();
source.setFieldType(FieldType.STRING);
source.setPath("/source");
source.setValue("one two three four");
source.setActions(new ArrayList<>());
Split action = new Split();
action.setDelimiter(" ");
source.getActions().add(action);
m.getInputField().add(source);
Field target1 = new SimpleField();
target1.setPath("/target1");
target1.setIndex(0);
target1.setFieldType(FieldType.STRING);
m.getOutputField().add(target1);
Field target2 = new SimpleField();
target2.setPath("/target2");
target2.setIndex(1);
target2.setFieldType(FieldType.STRING);
m.getOutputField().add(target2);
Field target3 = new SimpleField();
target3.setPath("/target3");
target3.setIndex(3);
target3.setFieldType(FieldType.STRING);
m.getOutputField().add(target3);
Audits audits = previewContext.processPreview(m);
assertEquals(0, audits.getAudit().size(), printAudit(audits));
target1 = m.getOutputField().get(0);
target2 = m.getOutputField().get(1);
target3 = m.getOutputField().get(2);
assertEquals("one", target1.getValue());
assertEquals("two", target2.getValue());
assertEquals("four", target3.getValue());
}
Aggregations