public static SimpleArguments Parse(IEnumerable <string> tokens)
            {
                var args = new SimpleArguments();

                CommandLineParser.Parse(tokens, args).Should().BeTrue();
                return(args);
            }
Esempio n. 2
0
        private static int Run(SimpleArguments arguments)
        {
            VsBuilderOptions options = new VsBuilderOptions();

            // parse command line arguments into options
            SimpleArgumentsReader.ArgumentsToObject(arguments, options);

            if (options.Solution == null || options.Solution.Length == 0)
            {
                Console.Error.WriteLine(@"ERROR: solution must be specified with -solution c:\path\to\solution.sln");
                return(1);
            }

            VsBuilder builder = new VsBuilder();

            int result = builder.Run(options);

            if ((result != 0) || builder.Results.Failed)
            {
                Console.Error.WriteLine("ERROR: some builds failed, check output");
                return(1);
            }

            Console.WriteLine("Success: all okay");
            return(0);
        }
        public void ParseTestNameValueSeparator()
        {
            Type argumentsType       = typeof(SimpleArguments);
            CommandLineParser target = new CommandLineParser(argumentsType, new[] { "/", "-" })
            {
                Culture = CultureInfo.InvariantCulture
            };

            Assert.AreEqual(CommandLineParser.DefaultNameValueSeparator, target.NameValueSeparator);
            SimpleArguments args = (SimpleArguments)target.Parse(new[] { "-Argument1:test", "-Argument2:foo:bar" });

            Assert.IsNotNull(args);
            Assert.AreEqual("test", args.Argument1);
            Assert.AreEqual("foo:bar", args.Argument2);
            try
            {
                args = (SimpleArguments)target.Parse(new[] { "-Argument1=test" });
                Assert.Fail("Exception expected");
            }
            catch (CommandLineArgumentException ex)
            {
                Assert.AreEqual(CommandLineArgumentErrorCategory.UnknownArgument, ex.Category);
            }

            target.NameValueSeparator = '=';
            args = (SimpleArguments)target.Parse(new[] { "-Argument1=test", "-Argument2=foo=bar" });
            Assert.IsNotNull(args);
            Assert.AreEqual("test", args.Argument1);
            Assert.AreEqual("foo=bar", args.Argument2);
            try
            {
                args = (SimpleArguments)target.Parse(new[] { "-Argument1:test" });
                Assert.Fail("Exception expected");
            }
            catch (CommandLineArgumentException ex)
            {
                Assert.AreEqual(CommandLineArgumentErrorCategory.UnknownArgument, ex.Category);
            }
        }
Esempio n. 4
0
        public void SimpleCommandUsage()
        {
            var args = new SimpleArguments();

            CommandLineParser.Parse(new[] { "/GlobalOption", "OtherThing" }, args);
        }