public void ParsingThrowsExceptionWhenNoArguments() { var parser = new CommandLineArgumentsParser(); var args = new string[] { }; Assert.Throws <ArgumentException>(() => parser.Parse(args)); }
public void Parser_PerformSum_Invalid_Command() { // arrange // act var parser = new CommandLineArgumentsParser(); var args = "S x1 y1 x2 y2 x3 y3"; // assert Assert.ThrowsException <ParserException>(() => parser.Parse(args)); }
public void Parser_InsertNumber_Invalid_Command() { // arrange // act var parser = new CommandLineArgumentsParser(); var args = "N x1 y1 v1"; // assert Assert.ThrowsException <ParserException>(() => parser.Parse(args)); }
public void Parser_CreateNewSpreadSheet_Invalid_Command() { // arrange // act var parser = new CommandLineArgumentsParser(); var args = "C w h"; // assert Assert.ThrowsException <ParserException>(() => parser.Parse(args)); }
public void ParsingThrowsExceptionWhenOnlyOneArgument() { var parser = new CommandLineArgumentsParser(); var args = new string[] { CommandLineArguments.Keys.Compress, }; Assert.Throws <ArgumentException>(() => parser.Parse(args)); }
/// <summary> /// Signals the external command line args. /// </summary> /// <param name="args">The args.</param> /// <returns>The Boolean.</returns> /// <remarks>...</remarks> public override bool SignalExternalCommandLineArgs(IList <string> args) { var parser = CommandLineArgumentsParser.Parse(args.ToArray()); if (Settings.IsProMode) { } return(base.SignalExternalCommandLineArgs(args)); }
public void Parser_Invalid_Command_Spaces() { // arrange // act var parser = new CommandLineArgumentsParser(); var args = " C -2 -2 "; // assert Assert.ThrowsException <ParserException>(() => parser.Parse(args)); }
public void ParsingThrowsExceptionWhenFormatMissing() { var parser = new CommandLineArgumentsParser(); var args = new string[] { CommandLineArguments.Keys.Compress, "file.bmp", "file.dds" }; Assert.Throws <ArgumentException>(() => parser.Parse(args)); }
public void ParsingThrowsExceptionWhenDDSFileHasInvalidExtension() { var parser = new CommandLineArgumentsParser(); var args = new string[] { CommandLineArguments.Keys.Compress, "file.bmp", "file.txt" }; Assert.Throws <ArgumentException>(() => parser.Parse(args)); }
public void Parser_CreateNewSpreadSheet_Command() { // arrange var parser = new CommandLineArgumentsParser(); var args = "C 1 1"; // act var result = parser.Parse(args); // assert Assert.IsInstanceOfType(result.Command, typeof(CreateNewSpreadSheetCommand)); Assert.IsInstanceOfType(result.Validator, typeof(CreateNewSpreadSheetValidator)); }
public void Parser_Quit_Command() { // arrange var parser = new CommandLineArgumentsParser(); var args = "Q"; // act var result = parser.Parse(args); // assert Assert.IsInstanceOfType(result.Command, typeof(QuitCommand)); Assert.IsInstanceOfType(result.Validator, typeof(QuitValidator)); }
private static async Task <CommandResult> RunCommandPipelineAsync(ReadOnlyCollection <string> commandLineArguments, Assembly commandAssembly, IServiceProvider provider, CancellationToken stoppingToken) { CommandLineArguments args = CommandLineArgumentsParser.Parse(commandLineArguments); Type type = CommandSelector.SelectCommand(commandAssembly, args); using CommandBase instance = CommandActivator.ConstructCommand(provider, type); CommandArgumentsBinder.BindArguments(instance, args); CommandOptionsBinder.BindOptions(instance, args); CommandResult result = await CommandExecutor.InvokeAsync(instance, stoppingToken); return(result); }
public void Parser_PerformSum_Command() { // arrange var parser = new CommandLineArgumentsParser(); var args = "S 1 1 2 1 3 1"; // act var result = parser.Parse(args); // assert Assert.IsInstanceOfType(result.Command, typeof(PerformSumCommand)); Assert.IsInstanceOfType(result.Validator, typeof(PerformSumValidator)); }
public void ParsingThrowsExceptionWhenTooManyArguments() { var parser = new CommandLineArgumentsParser(); var args = new string[] { CommandLineArguments.Keys.Compress, CommandLineArguments.Keys.Decompress, CommandLineArguments.Keys.Overwrite, "file.bmp", "file.dds" }; Assert.Throws <ArgumentException>(() => parser.Parse(args)); }
public void ParsingThrowsExceptionWhenUnknownFormat() { const char UnknownFormat = '9'; var parser = new CommandLineArgumentsParser(); var args = new string[] { $"{CommandLineArguments.Keys.Compress}{UnknownFormat}", "file.bmp", "file.dds" }; Assert.Throws <ArgumentException>(() => parser.Parse(args)); }
public void Parse_AllArgumentsAreValid_ReturnParameters() { var parameters = new FileReaderWriterParameters(String.Empty, string.Empty, new List <int>() { 1 }); var args = new[] { string.Empty, string.Empty, "1" }; var result = CommandLineArgumentsParser.Parse(args); Assert.That(result.InputPath, Is.EqualTo(parameters.InputPath)); Assert.That(result.OutputPath, Is.EqualTo(parameters.OutputPath)); Assert.That(result.Lines, Is.EqualTo(parameters.Lines)); }
public void ParsingCompressOption(char key, Type compressionFormatType) { var parser = new CommandLineArgumentsParser(); var args = new string[] { $"{CommandLineArguments.Keys.Compress}{key}", "file.bmp", "file.dds" }; var result = parser.Parse(args); Assert.AreEqual(ImageOperation.Compress, result.Operation); Assert.IsNotNull(result.Format); Assert.AreEqual(compressionFormatType, result.Format.GetType()); Assert.AreEqual("file.bmp", result.BMPFileName); Assert.AreEqual("file.dds", result.DDSFileName); }
public void ParseDecompressOption() { var parser = new CommandLineArgumentsParser(); var args = new string[] { CommandLineArguments.Keys.Decompress, "file.bmp", "file.dds" }; var result = parser.Parse(args); Assert.AreEqual(ImageOperation.Decompress, result.Operation); Assert.IsNull(result.Format); Assert.IsFalse(result.Overwrite); Assert.AreEqual("file.bmp", result.BMPFileName); Assert.AreEqual("file.dds", result.DDSFileName); }
public void ParseOverwriteOption() { var parser = new CommandLineArgumentsParser(); var args = new string[] { $"{CommandLineArguments.Keys.Compress}{CommandLineArguments.Keys.BC1Format}", CommandLineArguments.Keys.Overwrite, "file.bmp", "file.dds" }; var result = parser.Parse(args); Assert.AreEqual(ImageOperation.Compress, result.Operation); Assert.IsNotNull(result.Format); Assert.IsTrue(result.Overwrite); Assert.AreEqual("file.bmp", result.BMPFileName); Assert.AreEqual("file.dds", result.DDSFileName); }
static void Main(string[] args) { ICommandLineArgumentsParser parser = new CommandLineArgumentsParser(); IPrinter printer = new Printer.Printer(); var spreadSheet = new SpreadSheet(); while (true) { Console.Write("enter command: "); var input = Console.ReadLine(); try { var parseResult = parser.Parse(input); var command = parseResult.Command; var validator = parseResult.Validator; command.ExecuteCommand(spreadSheet, validator); printer.Print(spreadSheet); } catch (Exception ex) { Console.WriteLine(ex.Message); } } }
private static CommandLineArguments Parse(params string[] args) { return(CommandLineArgumentsParser.Parse(Array.AsReadOnly(args))); }
public void CannotParseNull() { Assert.Throws <ArgumentNullException>("args", () => CommandLineArgumentsParser.Parse(null)); }
public void Parse_OneOfLineNumberIsNotPositive_ThrowArgumentsException() { var args = new[] { string.Empty, string.Empty, "-1" }; Assert.That(() => CommandLineArgumentsParser.Parse(args), Throws.ArgumentException); }
public void Parse_AmountOfArgumentsLessThanThree_ThrowArgumentsException() { var args = new[] { string.Empty, string.Empty }; Assert.That(() => CommandLineArgumentsParser.Parse(args), Throws.ArgumentException); }