本文整理汇总了C#中CommandParser.Parse方法的典型用法代码示例。如果您正苦于以下问题:C# CommandParser.Parse方法的具体用法?C# CommandParser.Parse怎么用?C# CommandParser.Parse使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CommandParser
的用法示例。
在下文中一共展示了CommandParser.Parse方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TestParseMultiply
public void TestParseMultiply()
{
var commandParser = new CommandParser();
string testInput = "2*8";
var result = commandParser.Parse(testInput);
Assert.AreEqual(16, result);
}
示例2: TestParseSubtract
public void TestParseSubtract()
{
var commandParser = new CommandParser();
string testInput = "2-6";
var result = commandParser.Parse(testInput);
Assert.AreEqual(-4, result);
}
示例3: TestParseMod
public void TestParseMod()
{
var commandParser = new CommandParser();
string testInput = "8%3";
var result = commandParser.Parse(testInput);
Assert.AreEqual(2, result);
}
示例4: TestParseAdd
public void TestParseAdd()
{
var commandParser = new CommandParser();
string testInput = "2+6";
var result = commandParser.Parse(testInput);
Assert.AreEqual(8, result);
}
示例5: TestParseDivde
public void TestParseDivde()
{
var commandParser = new CommandParser();
string testInput = "8/2";
var result = commandParser.Parse(testInput);
Assert.AreEqual(4, result);
}
示例6: Parse_NullCommand_ShouldHaveNoTokens
public void Parse_NullCommand_ShouldHaveNoTokens()
{
CommandParser parser = new CommandParser();
var tokens = parser.Parse(null).Tokens.ToArray();
Assert.IsTrue(tokens.Length == 0);
}
示例7: Parse_EmptyCommand_ShouldHaveNoTokens
public void Parse_EmptyCommand_ShouldHaveNoTokens()
{
CommandParser parser = new CommandParser();
var tokens = parser.Parse(string.Empty).Tokens.ToArray();
Assert.IsTrue(tokens.Length == 0);
}
示例8: Parse_OneWordCommand_ShouldHaveOneToken
public void Parse_OneWordCommand_ShouldHaveOneToken()
{
CommandParser parser = new CommandParser();
var tokens = parser.Parse("test").Tokens.ToArray();
Assert.IsTrue(tokens.Length == 1);
Assert.AreEqual("test", tokens[0]);
}
示例9: Main
static void Main(string[] args)
{
var commandParser = new CommandParser();
var command = commandParser.Parse();
var moduleRunner = new ModuleRunner();
moduleRunner.Execute(command);
var commandRunner = new CommandRunner();
commandRunner.Execute(command);
}
示例10: Parse_CommandWithTokenCountSameAsTokens_ShouldHaveTokens
public void Parse_CommandWithTokenCountSameAsTokens_ShouldHaveTokens()
{
CommandParser parser = new CommandParser();
var tokens = parser.Parse("set mike to mikey", 4).Tokens.ToArray();
Assert.IsTrue(tokens.Length == 4);
Assert.AreEqual("set", tokens[0]);
Assert.AreEqual("mike", tokens[1]);
Assert.AreEqual("to", tokens[2]);
Assert.AreEqual("mikey", tokens[3]);
}
示例11: GetCorrectInput
public List<string> GetCorrectInput(string input)
{
var commandParser = new CommandParser();
var command = commandParser.Parse(input);
var dictionaryLocation = Assembly.GetEntryAssembly().Location;
var commands = File.ReadAllLines(dictionaryLocation.Replace("fuck.exe", "git dictionary.txt"));
command.Recommendations = commands.Where(x => Levenshtein.Calculate(x, command.Action) <= Tolerance).OrderBy(x => Levenshtein.Calculate(x, command.Action));
return command.UpdatedCommand.ToList();
}
示例12: Parse_ValidCommandWithIndicator_ShouldHaveTokens
public void Parse_ValidCommandWithIndicator_ShouldHaveTokens()
{
CommandParser parser = new CommandParser();
var tokens = parser.Parse("set \"mike smith\" to \"mikey mcmikestein\"").Tokens.ToArray();
Assert.IsTrue(tokens.Length == 4);
Assert.AreEqual("set", tokens[0]);
Assert.AreEqual("mike smith", tokens[1]);
Assert.AreEqual("to", tokens[2]);
Assert.AreEqual("mikey mcmikestein", tokens[3]);
}
示例13: Parse
public Migrator Parse(string[] args, Migrator migrator)
{
Options = new Dictionary<string, string>();
var cli = new CommandParser();
cli = CreateDefaultOpts(cli);
cli = CreateCustomOpts(cli);
cli.Parse(args);
if (cli.UnknownCommands.Count > 0)
{
foreach (string unknown in cli.UnknownCommands)
{
Console.WriteLine("Invalid command: " + unknown);
}
Console.WriteLine(cli.GetHelp());
Environment.Exit(0);
}
else if (cli.MissingRequiredCommands.Count > 0)
{
foreach (string missing in cli.MissingRequiredCommands)
{
Console.WriteLine("ERROR: Missing argument: " + missing);
}
Console.WriteLine(cli.GetHelp());
Environment.Exit(0);
}
else if (_showHelp)
{
Console.WriteLine(cli.GetHelp());
Environment.Exit(0);
}
migrator = InitMigrator(migrator);
SetDefaultOptionsForMigrator(migrator);
SetCustomOptionsForMigrator(migrator);
string strategy = string.Empty;
if (Options.ContainsKey("strategy"))
{
strategy = Options["strategy"];
}
migrator.Strategy = Factory.Create(strategy);
return migrator;
}
示例14: ParsingTest
public void ParsingTest(string command, bool resultShouldParse)
{
var target = new CommandParser();
var commandTree = target.Parse(command);
// Assert
if (resultShouldParse)
{
Assert.True(commandTree.Any());
}
else
{
Assert.False(commandTree.Any());
}
}
示例15: MappingTest
public void MappingTest(string commandLineArguments, ResultState expectedResult, string firstArgumentValue, ParserNotation notation)
{
// Setup
var parser = new CommandParser(notation);
var args = parser.Parse(commandLineArguments);
var configuration = new CommandConfiguration();
configuration.CommandAssemblies.Add(Assembly.GetExecutingAssembly());
var lookup = new CommandLookup(configuration);
var command = lookup.GetCommand(args.First().Key);
Assert.NotNull(args);
Assert.NotNull(command);
// Test
var target = new CommandMapper();
var result = target.Map(args.Skip(1), command.Arguments);
// Assert
Assert.NotNull(result);
Assert.True(result.State == expectedResult);
Assert.True(firstArgumentValue == null || firstArgumentValue == result?.ResultArguments?.First().ToString());
}