Exemple #1
0
        public void DynamicArgumentTest( )
        {
            IArgument <string> dynStringArg = new StringArg("dyn arg", null);
            CliSpecification   spec         =
                new CliSpecification(
                    null,
                    dynStringArg);

            ICommandLineParser clp = new CommandLineParser(spec);

            IParserResult pr =
                clp.Parse(
                    new[] {
                "arg1",
                "arg2",
                "arg3"
            });

            List <string> dynArgValues = pr.GetDynamicValues(dynStringArg).ToList( );

            Assert.AreEqual(3, dynArgValues.Count);
            Assert.AreEqual("arg1", dynArgValues[0]);
            Assert.AreEqual("arg2", dynArgValues[1]);
            Assert.AreEqual("arg3", dynArgValues[2]);
        }
Exemple #2
0
        public void DynamicArgumentTest2( )
        {
            IArgument <string> dynStringArg = new StringArg("dyn arg", null);
            CliSpecification   spec         =
                new CliSpecification(
                    null,
                    dynStringArg);

            IArgument <int> dynIntArg = new Argument <int>("dyn int arg", null);

            IOption myOpt = new Option(
                new UnifiedName("my", "opt"),
                false,
                null,
                dynIntArg);

            spec.Options.Add(myOpt);

            ICommandLineParser clp = new CommandLineParser(spec);

            IParserResult pr =
                clp.Parse(
                    new[] {
                "arg1",
                "arg2",
                "--my-opt",
                "23",
                "42"
            });

            List <string> dynArgValues = pr.GetDynamicValues(dynStringArg).ToList( );

            Assert.AreEqual(2, dynArgValues.Count);
            Assert.AreEqual("arg1", dynArgValues[0]);
            Assert.AreEqual("arg2", dynArgValues[1]);

            List <int> dynIntArgValues = pr.GetDynamicValues(dynIntArg).ToList( );

            Assert.AreEqual(2, dynIntArgValues.Count);
            Assert.AreEqual(23, dynIntArgValues[0]);
            Assert.AreEqual(42, dynIntArgValues[1]);
        }
Exemple #3
0
 private IEnumerable GetValueForDynamicArgumentGeneric <T1>(IArgument argument)
 {
     return(_pr.GetDynamicValues((IArgument <T1>)argument));
 }