Esempio n. 1
0
        private static void CheckSchema(
            OptionSchema schema,
            Action preAction,
            Action postAction,
            params string[] args)
        {
            preAction();
            var setting   = schema.Parse(args);
            var arguments = setting.Arguments.ToArray();
            var options   = setting.Options.ToArray();

            Assert.AreEqual(1, arguments.Length);
            Assert.AreEqual("foo", arguments[0]);
            Assert.AreEqual(1, options.Length);
            var o = options[0];

            if (o is RequiredArgumentOption v)
            {
                CheckArg(v);
                CheckValue(v);
            }
            else
            {
                Assert.Fail();
            }

            Assert.AreSame(schema, o.Schema);
            Assert.AreSame(schema, setting.Schema);
            postAction();
        }
        private static void CheckSchema(
            OptionSchema schema,
            Action preAction,
            Action postAction,
            params string[] args)
        {
            preAction();
            var setting   = schema.Parse(args);
            var arguments = setting.Arguments.ToArray();
            var options   = setting.Options.ToArray();

            Assert.AreEqual(1, arguments.Length);
            Assert.AreEqual("foo", arguments[0]);
            Assert.AreEqual(1, options.Length);
            var o = options[0];

            Assert.AreEqual("help", o.Name);
            Assert.IsTrue(o.ShortName.HasValue);
            Assert.AreEqual('h', o.ShortName.GetValueOrDefault());
            Assert.AreEqual("Show help message", o.Description);
            Assert.AreSame(schema, o.Schema);
            Assert.AreSame(schema, setting.Schema);
            postAction();
        }