use of org.talend.dataprep.api.dataset.ColumnMetadata in project data-prep by Talend.
the class ReplaceOnValueTest method test_apply_in_newcolumn.
@Test
public void test_apply_in_newcolumn() {
// given
final String columnId = "0000";
final Map<String, String> values = new HashMap<>();
values.put(columnId, "James Hetfield");
final DataSetRow row = new DataSetRow(values);
final Map<String, String> parameters = new HashMap<>();
parameters.put(CELL_VALUE_PARAMETER, generateJson("James", ReplaceOnValueHelper.STARTS_WITH_MODE));
parameters.put(REPLACE_VALUE_PARAMETER, "Jimmy");
parameters.put(REPLACE_ENTIRE_CELL_PARAMETER, "true");
parameters.put(ImplicitParameters.SCOPE.getKey().toLowerCase(), "column");
parameters.put(ImplicitParameters.COLUMN_ID.getKey().toLowerCase(), columnId);
parameters.put(ActionsUtils.CREATE_NEW_COLUMN, "true");
// when
ActionTestWorkbench.test(row, actionRegistry, factory.create(action, parameters));
// then
assertThat(row.get(columnId), is("James Hetfield"));
assertThat(row.get("0001"), is("Jimmy"));
ColumnMetadata expected = ColumnMetadata.Builder.column().id(1).name("0000_replace").type(Type.STRING).build();
ColumnMetadata actual = row.getRowMetadata().getById("0001");
assertEquals(expected, actual);
}
use of org.talend.dataprep.api.dataset.ColumnMetadata in project data-prep by Talend.
the class SplitTest method should_update_metadata.
@Test
public void should_update_metadata() {
// given
final List<ColumnMetadata> input = new ArrayList<>();
input.add(createMetadata("0000", "recipe"));
input.add(createMetadata("0001", "steps"));
input.add(createMetadata("0002", "last update"));
final RowMetadata rowMetadata = new RowMetadata(input);
final List<ColumnMetadata> expected = new ArrayList<>();
expected.add(createMetadata("0000", "recipe"));
expected.add(createMetadata("0001", "steps"));
expected.add(createMetadata("0003", "steps_split_1"));
expected.add(createMetadata("0004", "steps_split_2"));
expected.add(createMetadata("0002", "last update"));
// when
ActionTestWorkbench.test(rowMetadata, actionRegistry, factory.create(action, parameters));
// then
assertEquals(expected, rowMetadata.getColumns());
}
use of org.talend.dataprep.api.dataset.ColumnMetadata in project data-prep by Talend.
the class SplitTest method should_update_metadata_twice.
@Test
public void should_update_metadata_twice() {
// given
final List<ColumnMetadata> input = new ArrayList<>();
input.add(createMetadata("0000", "recipe"));
input.add(createMetadata("0001", "steps"));
input.add(createMetadata("0002", "last update"));
final RowMetadata rowMetadata = new RowMetadata(input);
final List<ColumnMetadata> expected = new ArrayList<>();
expected.add(createMetadata("0000", "recipe"));
expected.add(createMetadata("0001", "steps"));
expected.add(createMetadata("0005", "steps_split_1"));
expected.add(createMetadata("0006", "steps_split_2"));
expected.add(createMetadata("0003", "steps_split_1"));
expected.add(createMetadata("0004", "steps_split_2"));
expected.add(createMetadata("0002", "last update"));
// when
ActionTestWorkbench.test(rowMetadata, actionRegistry, factory.create(action, parameters), factory.create(action, parameters));
assertEquals(expected, rowMetadata.getColumns());
}
use of org.talend.dataprep.api.dataset.ColumnMetadata in project data-prep by Talend.
the class SubstringTest method should_update_metadata_twice.
@Test
public void should_update_metadata_twice() {
// given
final List<ColumnMetadata> input = new ArrayList<>();
input.add(createMetadata("0000", "recipe"));
input.add(createMetadata("0001", "steps"));
input.add(createMetadata("0002", "last update"));
final RowMetadata rowMetadata = new RowMetadata(input);
final DataSetRow row = new DataSetRow(rowMetadata);
final List<ColumnMetadata> expected = new ArrayList<>();
expected.add(createMetadata("0000", "recipe"));
expected.add(createMetadata("0001", "steps"));
expected.add(createMetadata("0004", "steps_substring"));
expected.add(createMetadata("0003", "steps_substring"));
expected.add(createMetadata("0002", "last update"));
// when
ActionTestWorkbench.test(row, actionRegistry, factory.create(action, parameters), factory.create(action, parameters));
// then
assertEquals(expected, row.getRowMetadata().getColumns());
}
use of org.talend.dataprep.api.dataset.ColumnMetadata in project data-prep by Talend.
the class SubstringTest method should_update_metadata.
@Test
public void should_update_metadata() {
// given
final List<ColumnMetadata> input = new ArrayList<>();
input.add(createMetadata("0000", "recipe"));
input.add(createMetadata("0001", "steps"));
input.add(createMetadata("0002", "last update"));
final RowMetadata rowMetadata = new RowMetadata(input);
final List<ColumnMetadata> expected = new ArrayList<>();
expected.add(createMetadata("0000", "recipe"));
expected.add(createMetadata("0001", "steps"));
expected.add(createMetadata("0003", "steps_substring"));
expected.add(createMetadata("0002", "last update"));
// when
ActionTestWorkbench.test(rowMetadata, actionRegistry, factory.create(action, parameters));
// then
assertEquals(expected, rowMetadata.getColumns());
}
Aggregations