public void IntArgParser() { var argSchema = new ArgSchema(); argSchema.Add <int>('b'); Assert.AreEqual(typeof(IntArgParser), argSchema.IntArgParser('b').GetType()); }
public void Parse() { var schema = new ArgSchema() .Add <bool>('b') .Add <string>('s') .Add <int>('i'); Assert.IsEmpty(new ArgParserFactory(schema).Parse(new string[0])); CollectionAssert.AreEqual(new List <object> { true }, new ArgParserFactory(schema).Parse(new[] { "-b" })); CollectionAssert.AreEqual(new List <object> { "hello" }, new ArgParserFactory(schema).Parse(new[] { "-s hello" })); CollectionAssert.AreEqual(new List <object> { 32 }, new ArgParserFactory(schema).Parse(new[] { "-i 32" })); CollectionAssert.AreEquivalent(new List <object> { true, "hello", 32 }, new ArgParserFactory(schema).Parse(new[] { "-b", "-s hello", "-i 32" })); Assert.Throws <ArgumentException>(() => new ArgParserFactory(schema).Parse(new[] { "-b boolean_shouldnt_have_a_value" })); Assert.Throws <ArgumentException>(() => new ArgParserFactory(schema).Parse(new[] { "-g not_defined_in_schema" })); }
public void StringArgParser() { var argSchema = new ArgSchema(); argSchema.Add <string>('b'); Assert.AreEqual(typeof(StringArgParser), argSchema.StringArgParser('b').GetType()); }
public void BoolArgParser() { var argSchema = new ArgSchema(); argSchema.Add <bool>('b'); Assert.AreEqual(typeof(BoolArgParser), argSchema.BoolArgParser('b').GetType()); }
public void HasBoolArg() { var argSchema = new ArgSchema(); argSchema.Add <bool>('b'); Assert.True(argSchema.HasBoolArg('b')); Assert.False(argSchema.HasBoolArg('g')); }
public void HasIntArg() { var argSchema = new ArgSchema(); argSchema.Add <int>('b'); Assert.True(argSchema.HasIntArg('b')); Assert.False(argSchema.HasIntArg('g')); }
public void HasStringArg() { var argSchema = new ArgSchema(); argSchema.Add <string>('b'); Assert.True(argSchema.HasStringArg('b')); Assert.False(argSchema.HasStringArg('g')); }