Пример #1
0
        public void OptionBuilderConfiguresOptionCorrectly()
        {
            var resolverMock        = new Mock <ICommandLineArgumentResolver <string> >();
            var serviceProviderMock = new Mock <IServiceProvider>();

            serviceProviderMock.Setup(_ => _.GetService(It.IsAny <Type>())).Returns(resolverMock.Object);

            var cmdOption = new CommandLineOption <object>(
                new CommandLineParserOptions {
                PrefixLongOption = string.Empty, PrefixShortOption = string.Empty
            },
                new object(),
                XUnitExtensions.CreateLambda <object, string>(o => o.ToString()),
                new DefaultResolver <object>(NullLogger <CommandLineParser> .Instance, serviceProviderMock.Object), NullLogger.Instance);

            var builder = cmdOption as IOptionBuilder;
            var option  = cmdOption as CommandLineOptionBase;

            string sDefault = "default";
            string sHelp    = "help";
            string sLong    = "long";
            string sShort   = "short";

            builder
            .Default(sDefault)
            .Description(sHelp)
            .Name(sShort, sLong)
            .Required();

            Assert.True(option.HasDefault);
            Assert.Equal(sDefault, option.DefaultValue);

            Assert.True(option.HasLongName);
            Assert.Equal(sLong, option.LongName);

            Assert.Equal(sHelp, option.Description);

            Assert.True(option.HasShortName);
            Assert.Equal(sShort, option.ShortName);
        }
Пример #2
0
        public void OptionBuilderConfiguresOptionCorrectly()
        {
            var resolverMock        = new Mock <ICommandLineArgumentResolver <string> >();
            var resolverFactoryMock = new Mock <IArgumentResolverFactory>();

            resolverFactoryMock.Setup(_ => _.CreateResolver(It.IsAny <Type>())).Returns(resolverMock.Object);

            var option = new CommandLineOption(
                new CommandLineParserOptions {
                PrefixLongOption = string.Empty, PrefixShortOption = string.Empty
            },
                new object(),
                XUnitExtensions.CreateLambda <object, string>(o => o.ToString()),
                resolverFactoryMock.Object);

            var builder = option as IOptionBuilder;

            string sDefault = "default";
            string sHelp    = "help";
            string sLong    = "long";
            string sShort   = "short";

            builder
            .Default(sDefault)
            .Description(sHelp)
            .Name(sShort, sLong)
            .Required();

            Assert.True(option.HasDefault);
            Assert.Equal(sDefault, option.DefaultValue);

            Assert.True(option.HasLongName);
            Assert.Equal(sLong, option.LongName);

            Assert.Equal(sHelp, option.Description);

            Assert.True(option.HasShortName);
            Assert.Equal(sShort, option.ShortName);
        }