Exemple #1
0
        public void EnumValueHelp_ShouldReturnOptionSetup()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            setup.EnumValueHelp(LogLevel.Trace, "newEnumValueHelp").Should().Be(setup);
        }
Exemple #2
0
        public void Help_ShouldAssignHelpToOptionParser()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            setup.Help("newHelpText");

            A.CallToSet(() => optionParser.OptionHelp).To("newHelpText").MustHaveHappened();
        }
Exemple #3
0
        public void DefaultValue_ShouldAssignDefaultValueToOptionParser()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            setup.DefaultValue(LogLevel.Debug);

            A.CallToSet(() => optionParser.OptionDefaultValue).To(LogLevel.Debug).MustHaveHappened();
        }
Exemple #4
0
        public void Name_ShouldReturnOptionSetup()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            A.CallTo(() => commandParser.CanOptionParserUseOptionName(optionParser, "newName")).Returns(true);

            setup.Name("newName").Should().Be(setup);
        }
Exemple #5
0
        public void IsRequired_ShouldSetIsRequiredFlagOnOptionParser()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            setup.IsRequired();

            A.CallToSet(() => optionParser.IsOptionRequired).To(true).MustHaveHappened();
        }
Exemple #6
0
        public void Name_DuplicateName_ShouldThrowException()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            A.CallTo(() => commandParser.CanOptionParserUseOptionName(optionParser, "newName")).Returns(false);

            setup.Invoking(a => a.Name("newName"))
            .Should()
            .Throw <ArgumentException>();
        }
Exemple #7
0
        public void EnumValueHelp_ShouldAssignEnumValueHelpToOptionParser()
        {
            var commandParser = A.Fake <CommandParser <DataTypesCommandOptions> >();

            var targetProperty = typeof(DataTypesCommandOptions).GetProperty("Enum");
            var optionParser   = A.Fake <EnumOptionParser <LogLevel> >(ob => ob.WithArgumentsForConstructor(() => new EnumOptionParser <LogLevel>(targetProperty, "enum")));
            var enumValueHelps = A.Fake <IDictionary <LogLevel, String> >();

            var setup = new EnumOptionSetup <DataTypesCommandOptions, LogLevel>(commandParser, optionParser);

            A.CallTo(() => optionParser.EnumValuesHelps).Returns(enumValueHelps);

            setup.EnumValueHelp(LogLevel.Trace, "newEnumValueHelp");

            A.CallTo(() => enumValueHelps.Add(LogLevel.Trace, "newEnumValueHelp")).MustHaveHappened();
        }