Search in sources :

Example 1 with TFileOutputDelimitedProperties

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;
}
Also used : TFileOutputDelimitedDefinition(org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedDefinition) TFileOutputDelimitedProperties(org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties)

Example 2 with TFileOutputDelimitedProperties

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);
}
Also used : FileOutputStream(java.io.FileOutputStream) TFileOutputDelimitedProperties(org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties) File(java.io.File)

Example 3 with TFileOutputDelimitedProperties

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");
}
Also used : TFileOutputDelimitedProperties(org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties) Test(org.junit.Test)

Example 4 with TFileOutputDelimitedProperties

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);
}
Also used : FileOutputStream(java.io.FileOutputStream) TFileOutputDelimitedProperties(org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties) File(java.io.File)

Example 5 with TFileOutputDelimitedProperties

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());
}
Also used : IndexedRecord(org.apache.avro.generic.IndexedRecord) ArrayList(java.util.ArrayList) TFileOutputDelimitedProperties(org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties) File(java.io.File) Test(org.junit.Test)

Aggregations

TFileOutputDelimitedProperties (org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedProperties)10 File (java.io.File)4 Test (org.junit.Test)4 FileOutputStream (java.io.FileOutputStream)3 ArrayList (java.util.ArrayList)2 IndexedRecord (org.apache.avro.generic.IndexedRecord)2 TFileOutputDelimitedDefinition (org.talend.components.filedelimited.tfileoutputdelimited.TFileOutputDelimitedDefinition)2 Schema (org.apache.avro.Schema)1 ComponentWizard (org.talend.components.api.wizard.ComponentWizard)1 TFileInputDelimitedDefinition (org.talend.components.filedelimited.tfileinputdelimited.TFileInputDelimitedDefinition)1 TFileInputDelimitedProperties (org.talend.components.filedelimited.tfileinputdelimited.TFileInputDelimitedProperties)1