Extract and delegate logs concurrently

This commit is contained in:
Rob Mulholand
2019-08-28 09:25:13 -05:00
parent d496dad33c
commit 63dabbb051
11 changed files with 505 additions and 253 deletions
+13 -5
View File
@@ -22,15 +22,23 @@ import (
type MockLogDelegator struct {
AddedTransformers []transformer.EventTransformer
DelegateCalled bool
DelegateError error
DelegateCallCount int
DelegateErrors []error
LogsFound []bool
}
func (delegator *MockLogDelegator) AddTransformer(t transformer.EventTransformer) {
delegator.AddedTransformers = append(delegator.AddedTransformers, t)
}
func (delegator *MockLogDelegator) DelegateLogs() error {
delegator.DelegateCalled = true
return delegator.DelegateError
func (delegator *MockLogDelegator) DelegateLogs(errs chan error, logsFound chan bool) {
delegator.DelegateCallCount++
var delegateErrorThisRun error
delegateErrorThisRun, delegator.DelegateErrors = delegator.DelegateErrors[0], delegator.DelegateErrors[1:]
if delegateErrorThisRun != nil {
errs <- delegateErrorThisRun
}
var logsFoundThisRun bool
logsFoundThisRun, delegator.LogsFound = delegator.LogsFound[0], delegator.LogsFound[1:]
logsFound <- logsFoundThisRun
}
+14 -6
View File
@@ -22,16 +22,24 @@ import (
)
type MockLogExtractor struct {
AddedConfigs []transformer.EventTransformerConfig
ExtractLogsCalled bool
ExtractLogsError error
AddedConfigs []transformer.EventTransformerConfig
ExtractLogsCount int
ExtractLogsErrors []error
MissingHeadersExist []bool
}
func (extractor *MockLogExtractor) AddTransformerConfig(config transformer.EventTransformerConfig) {
extractor.AddedConfigs = append(extractor.AddedConfigs, config)
}
func (extractor *MockLogExtractor) ExtractLogs(recheckHeaders constants.TransformerExecution) error {
extractor.ExtractLogsCalled = true
return extractor.ExtractLogsError
func (extractor *MockLogExtractor) ExtractLogs(recheckHeaders constants.TransformerExecution, errs chan error, missingHeadersFound chan bool) {
extractor.ExtractLogsCount++
var errorThisRun error
errorThisRun, extractor.ExtractLogsErrors = extractor.ExtractLogsErrors[0], extractor.ExtractLogsErrors[1:]
if errorThisRun != nil {
errs <- errorThisRun
}
var missingHeadersExist bool
missingHeadersExist, extractor.MissingHeadersExist = extractor.MissingHeadersExist[0], extractor.MissingHeadersExist[1:]
missingHeadersFound <- missingHeadersExist
}