public void Validate_Valid_Tsv_File() { var validFile = new TsvFile( "ValidFile", new[] { "Id", "Name" }, new[] { new[] { "123", "321" }, new[] { "567", "765" } } ); var tsvValidator = new TsvFileValidator(); tsvValidator.Validate(validFile); // No exceptions - test and validation successful, there is no Assert.Ok() }
public void Validate_Invalid_Tsv_File() { var invalidFile = new TsvFile( "InvalidFile", new[] { "Id" }, new[] { new[] { "123", "321" }, new[] { "567", "765", "234234" } } ); var tsvValidator = new TsvFileValidator(); void Act() => tsvValidator.Validate(invalidFile); Assert.Throws <TsvValidationException>(Act); }
static void ExecuteFlow(AppSettings settings, string connectionString) { var parser = new TsvParser(); var validator = new TsvFileValidator(); using var fillService = new MySqlDatabaseImportService(connectionString); var loader = new TsvLoader(parser, validator, fillService); loader.Load( settings.FilesToImport ?? throw new AppSettingsMissingException(nameof(settings.FilesToImport)), settings.DbSchemaFile ?? throw new AppSettingsMissingException(nameof(settings.DbSchemaFile)), settings.DatabaseName ?? throw new AppSettingsMissingException(nameof(settings.DatabaseName)) ); }