public static void ProcessField(string description, Field field, FieldProcessorDefinition fieldProcessorDefinition) { try { if (field.ValidationResult != ValidationResultType.Valid) { return; } DecodeField(fieldProcessorDefinition.FieldName, description, field, fieldProcessorDefinition.Decoder); if (field.ValidationResult != ValidationResultType.Valid) { return; } ValidateFieldRules(field, fieldProcessorDefinition.Rules); if (field.ValidationResult != ValidationResultType.Valid) { return; } ProcessAggregators(field, fieldProcessorDefinition.Aggregators); } catch (Exception ex) { throw new ParsedDataProcessorException($"RowIndex: {field.Row.Index}, FieldIndex: {field.Index}, Field: {description}", ex); } }
protected void AssertFieldProcessorDefinition( string expectedFieldName, string expectedPattern, Type expectedType, ValidationResultType expectedFailValidationResult, FieldProcessorDefinition fieldProcessorDefinition) { Assert.AreEqual(expectedFieldName, fieldProcessorDefinition.FieldName); Assert.IsNotNull(fieldProcessorDefinition.Decoder); Assert.AreEqual(expectedPattern, fieldProcessorDefinition.Decoder.Pattern); Assert.AreEqual(expectedType, fieldProcessorDefinition.Decoder.GetType()); Assert.AreEqual(expectedFailValidationResult, fieldProcessorDefinition.Decoder.FailValidationResult); }