use of org.talend.components.splunk.TSplunkEventCollectorDefinition in project components by Talend.
the class TSplunkEventCollectorWriterTestIT method testWritingRecords.
/**
* Test writing defined amount of records with correct authorization token.
*/
public void testWritingRecords(int recordCount, IndexedRecord record, Schema schema) throws IOException {
TSplunkEventCollectorProperties props = (TSplunkEventCollectorProperties) new TSplunkEventCollectorDefinition().createProperties();
if (recordCount > 1) {
// lets check if data will be written with batch size 100, but we have only 5 messages to send.
props.extendedOutput.setValue(true);
props.eventsBatchSize.setValue(100);
} else {
// We will try to write one event at a time.
props.extendedOutput.setValue(false);
}
if (schema != null) {
props.schema.schema.setValue(schema);
}
props.fullUrl.setValue(URL);
props.token.setValue(TOKEN);
TSplunkEventCollectorSink sink = new TSplunkEventCollectorSink();
sink.initialize(null, props);
TSplunkEventCollectorWriteOperation writeOperation = new TSplunkEventCollectorWriteOperation(sink);
TSplunkEventCollectorWriter writer = (TSplunkEventCollectorWriter) writeOperation.createWriter(null);
writer.open("test");
for (int i = 0; i < recordCount; i++) {
writer.write(record);
}
Result result = writer.close();
List<Result> results = new ArrayList<>();
results.add(result);
Map<String, Object> resultMap = writeOperation.finalize(results, null);
assertEquals(recordCount + " record should have been written", recordCount, resultMap.get(ComponentDefinition.RETURN_TOTAL_RECORD_COUNT));
assertEquals(recordCount + " record should have been written", recordCount, resultMap.get(ComponentDefinition.RETURN_SUCCESS_RECORD_COUNT));
assertEquals("There should be no rejected records.", 0, resultMap.get(ComponentDefinition.RETURN_REJECT_RECORD_COUNT));
Integer lastErrorCode = (Integer) resultMap.get(TSplunkEventCollectorDefinition.RETURN_RESPONSE_CODE);
assertFalse("lastErrorCode shouldn't be null", lastErrorCode == null);
assertEquals("Response code should be 0", 0, lastErrorCode.intValue());
}
use of org.talend.components.splunk.TSplunkEventCollectorDefinition in project components by Talend.
the class TSplunkEventCollectorWriterTestIT method testWritingOneRecordWithWrongToken.
/**
* Test writing one record with wrong authorization token. Wrong authorization token should result in an error
* response from the server.
*/
@Test
public void testWritingOneRecordWithWrongToken() throws IOException {
TSplunkEventCollectorProperties props = (TSplunkEventCollectorProperties) new TSplunkEventCollectorDefinition().createProperties();
// We will try to write one event at a time.
props.extendedOutput.setValue(false);
props.fullUrl.setValue(URL);
props.token.setValue(WRONG_TOKEN);
TSplunkEventCollectorSink sink = new TSplunkEventCollectorSink();
sink.initialize(null, props);
TSplunkEventCollectorWriteOperation writeOperation = new TSplunkEventCollectorWriteOperation(sink);
TSplunkEventCollectorWriter writer = (TSplunkEventCollectorWriter) writeOperation.createWriter(null);
IndexedRecord record = createIndexedRecord();
writer.open("test");
try {
writer.write(record);
} catch (IOException e) {
}
Result result = writer.close();
List<Result> results = new ArrayList<>();
results.add(result);
Map<String, Object> resultMap = writeOperation.finalize(results, null);
assertEquals("1 record should have been sent", 1, resultMap.get(ComponentDefinition.RETURN_TOTAL_RECORD_COUNT));
assertEquals("1 record should have been rejected", 1, resultMap.get(ComponentDefinition.RETURN_REJECT_RECORD_COUNT));
assertEquals("0 record should have been written", 0, resultMap.get(ComponentDefinition.RETURN_SUCCESS_RECORD_COUNT));
Integer lastErrorCode = (Integer) resultMap.get(TSplunkEventCollectorDefinition.RETURN_RESPONSE_CODE);
assertFalse("lastErrorCode shouldn't be null", lastErrorCode == null);
assertEquals("Response code should be 4", 4, lastErrorCode.intValue());
}
Aggregations