예제 #1
0
        public OptionsProcessor NewOptionsProcessor(
            IList <OptionConfiguration> optionsConfiguration
            )
        {
            OptionsProcessorImpl processor = new OptionsProcessorImpl();

            processor.OptionsConfiguration = optionsConfiguration;
            return(processor);
        }
예제 #2
0
        public void TestProcess_NotStrictAndWithAnUnconfiguredFlagOption()
        {
            string unconfiguredFlagOptionParameter           = (string)this.Ctx.GetObject("UnconfiguredFlagOptionParameter");
            IList <OptionConfiguration> optionsConfiguration = (IList <OptionConfiguration>) this.Ctx.GetObject("OptionsConfiguration");

            IList <string> parameters = new List <string>();

            parameters.Add(unconfiguredFlagOptionParameter);

            OptionsProcessorImpl processor = new OptionsProcessorImpl();

            processor.OptionsConfiguration = optionsConfiguration;
            processor.Parameters           = parameters;
            UsageException exception = (UsageException)Assert.Throws(typeof(UsageException), () => {
                processor.Process();
            });

            Assert.AreEqual("Unknown option - unconfiguredFlagOption", exception.Message);
        }
예제 #3
0
        public void TestProcess()
        {
            IList <string> parameters = (IList <string>) this.Ctx.GetObject("Parameters");
            IList <OptionConfiguration> optionsConfiguration = (IList <OptionConfiguration>) this.Ctx.GetObject("OptionsConfiguration");

            OptionsProcessorImpl processor = new OptionsProcessorImpl();

            processor.OptionsConfiguration = optionsConfiguration;
            processor.Parameters           = parameters;
            processor.Process();

            Assert.IsNotNull(processor.Options);
            Assert.AreEqual(true, processor.Options["flagOption"]);
            Assert.AreEqual("someoptionstring", processor.Options["optionConfiguration1"]);
            Assert.AreEqual(123, processor.Options["optionConfiguration2"]);
            Assert.AreEqual(new List <string> {
                "someargumentstring", "456"
            }, processor.RemainderParameters);
        }
예제 #4
0
        public void TestNewOptionsProcessor()
        {
            OptionConfiguration optionConfiguration = ConfigurationFactory.NewOptionConfiguration(
                "optionName",
                typeof(string),
                "optionFormat",
                true,
                "usage information"
                );
            IList <OptionConfiguration> optionsConfiguration = new List <OptionConfiguration>();

            optionsConfiguration.Add(optionConfiguration);

            OptionsProcessor processor = this.ConfigurationFactory.NewOptionsProcessor(optionsConfiguration);

            Assert.IsNotNull(processor);
            Assert.IsInstanceOf(typeof(OptionsProcessorImpl), processor);
            OptionsProcessorImpl processorImpl = processor as OptionsProcessorImpl;

            Assert.AreEqual(optionsConfiguration, processorImpl.OptionsConfiguration);
        }