Пример #1
0
        public override void Run(string input, string output, string outputFormat)
        {
            if (!File.Exists(input))
            {
                throw new ArgumentException($"Input file in path '{input}' doesn't exist.");
            }

            var outputPath = GetOutputPath(input, output, outputFormat);

            if (!loader.IsSupportedFile(input))
            {
                var msg = $"Input file '{input}' is not supported.\nSupported input extensions: {string.Join(", ", loader.GetSupportedExtensions())}";
                throw new ArgumentException(msg);
            }

            if (!tableExporter.IsSupportedFile(outputPath))
            {
                var msg = $"Output file '{outputPath}' is not supported.\nSupported output extensions: {string.Join(", ", tableExporter.GetSupportedExtensions())}";
                throw new ArgumentException(msg);
            }

            var tables = loader.LoadAllSheets(input);

            foreach (var table in tables)
            {
                var toAppend        = string.IsNullOrEmpty(table.Name) ? "" : $"_{table.Name}";
                var tableOutputPath = PathUtils.AppendToFilename(outputPath, toAppend);
                tableExporter.Export(table, tableOutputPath);
            }
        }
Пример #2
0
        public void AppendToFilename_CorrectOutput(string path, string stringToAppend, string expectedPath)
        {
            var appended = PathUtils.AppendToFilename(path, stringToAppend);

            Assert.Equal(expectedPath, appended);
        }