use of org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties in project components by Talend.
the class FileDelimitedTestBasic method createOutputProperties.
protected TFileOutputDelimitedProperties createOutputProperties(Object file, boolean isCsvMode) {
TFileOutputDelimitedProperties properties = (TFileOutputDelimitedProperties) new TFileOutputDelimitedDefinition().createProperties().init();
properties.fileName.setValue(file);
properties.rowSeparator.setValue("\n");
if (isCsvMode) {
properties.csvOptions.setValue(true);
properties.escapeChar.setValue("\"");
properties.textEnclosure.setValue("\"");
}
properties.main.schema.setValue(BASIC_OUTPUT_SCHEMA);
ComponentTestUtils.checkSerialize(properties, errorCollector);
return properties;
}
use of org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties in project components by Talend.
the class FileDelimitedWriterTestIT method testIncludeHeaderDelimited.
public void testIncludeHeaderDelimited(boolean targetIsStream) throws Throwable {
String resources = getResourceFolder();
String outputFile = resources + "/out/test_IncludeHeader_delimited.csv";
LOGGER.debug("Test file path: " + outputFile);
String refFile = resources + "/ref_test_IncludeHeader_delimited.csv";
TFileOutputDelimitedProperties properties = createOutputProperties(outputFile, false);
properties.includeHeader.setValue(true);
if (targetIsStream) {
properties.targetIsStream.setValue(true);
properties.fileName.setValue(new FileOutputStream(new File(outputFile)));
}
basicOutputTest(properties, refFile);
}
use of org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties in project components by Talend.
the class FileDelimitedWriterTestIT method testOutputRowMode.
@Test
public void testOutputRowMode() throws Throwable {
String resources = getResourceFolder();
String outputFile = resources + "/out/test_output_row_mode.csv";
LOGGER.debug("Test file path: " + outputFile);
// Delimited mode
TFileOutputDelimitedProperties properties = createOutputProperties(outputFile, false);
properties.rowMode.setValue(true);
// Target is not stream
properties.targetIsStream.setValue(false);
basicOutputTest(properties, resources + "/ref_test_output_delimited.csv");
// Target is stream
properties.targetIsStream.setValue(true);
basicOutputTest(properties, resources + "/ref_test_output_delimited.csv");
// CSV mode
properties = createOutputProperties(outputFile, true);
properties.rowMode.setValue(true);
// Target is not stream
properties.targetIsStream.setValue(false);
basicOutputTest(properties, resources + "/ref_test_output_csv.csv");
// Target is stream
properties.targetIsStream.setValue(true);
basicOutputTest(properties, resources + "/ref_test_output_csv.csv");
}
use of org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties in project components by Talend.
the class FileDelimitedWriterTestIT method testOutputDelimited.
public void testOutputDelimited(boolean targetIsStream) throws Throwable {
String resources = getResourceFolder();
String outputFile = resources + "/out/test_output_delimited.csv";
LOGGER.debug("Test file path: " + outputFile);
String refFile = resources + "/ref_test_output_delimited.csv";
TFileOutputDelimitedProperties properties = createOutputProperties(outputFile, false);
if (targetIsStream) {
properties.targetIsStream.setValue(true);
properties.fileName.setValue(new FileOutputStream(new File(outputFile)));
}
basicOutputTest(properties, refFile);
}
use of org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties in project components by Talend.
the class FileDelimitedWriterTestIT method testDeleteGeneratedEmptyFile.
// Test FileOutputDelimited deleted generated empty file
@Test
public void testDeleteGeneratedEmptyFile() throws Throwable {
String resources = getResourceFolder();
String outputFile = resources + "/out/test_deleteGeneratedEmptyFile.csv";
LOGGER.debug("Test file path: " + outputFile);
TFileOutputDelimitedProperties properties = createOutputProperties(outputFile, false);
List<IndexedRecord> records = new ArrayList<>();
// Delete generated empty file function not be checked
doWriteRows(properties, records);
File outFile = new File(outputFile);
assertTrue(outFile.exists());
assertEquals(0, outFile.length());
assertTrue(outFile.delete());
// Active delete generated empty file function
assertFalse(outFile.exists());
properties.deleteEmptyFile.setValue(true);
doWriteRows(properties, records);
assertFalse(outFile.exists());
}
Aggregations