public void ArgumentBasicArgumentTypeIsNotMultiple()
        {
            IArgument <BasicOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <BasicOptions>().WithArgument(x => x.Boolean);

            Assert.False(argument.IsMultiple);
        }
        public void ArgumentMultiArgumentTypeIsMultiple()
        {
            IArgument <MultiOptions, string> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <MultiOptions>().WithMultiArgument(x => x.String);

            Assert.True(argument.IsMultiple);
        }
        public void ArgumentGetCatagoryReturnsCatagory()
        {
            IArgument <BasicOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <BasicOptions>().WithArgument(x => x.Boolean);

            Assert.IsType <BasicOptions>(argument.GetArgumentCatagory <BasicOptions>());
        }
        public void ArgumentGetCatagoryNotNull()
        {
            IArgument <BasicOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <BasicOptions>().WithArgument(x => x.Boolean);

            Assert.NotNull(argument.GetArgumentCatagory <BasicOptions>());
        }
        public void ArgumentRequiredMethodsSetsArgumentToRequired()
        {
            IArgument <BasicOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <BasicOptions>().WithArgument(x => x.Boolean).Required();

            Assert.True(argument.IsRequired);
        }
        public void ArgumentWithArgumentReturnsANewArgument()
        {
            IArgument <BasicOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <BasicOptions>().WithArgument(x => x.Boolean);

            Assert.NotSame(argument, argument.WithArgument(x => x.Byte));
        }
        public void ArgumentFlagMethodDissallowedFlagsShouldThrowArgumentException(char flag)
        {
            IArgument <NameOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <NameOptions>().WithArgument(x => x.PascalCaseProperty);

            Assert.Throws <ArgumentException>(() => argument.Flag(flag));
        }
        public void ArgumentFlagMethodAllowedNames(char flag)
        {
            IArgument <NameOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <NameOptions>().WithArgument(x => x.PascalCaseProperty).Flag(flag);

            Assert.Equal(flag, argument.ArgumentFlag);
        }
        public void ArgumentNameMethodDissallowedNamesShouldThrowArgumentException(string argumentName)
        {
            IArgument <NameOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <NameOptions>().WithArgument(x => x.PascalCaseProperty);

            Assert.Throws <ArgumentException>(() => argument.Name(argumentName));
        }
        public void ArgumentNameMethodAllowedNames(string argumentName)
        {
            IArgument <NameOptions, bool> argument =
                ArgumentParser.Create("app").CreateArgumentCatagory <NameOptions>().WithArgument(x => x.PascalCaseProperty).Name(argumentName);

            Assert.Equal(argumentName, argument.ArgumentName);
        }
Beispiel #11
0
        public void ArgumentParserGetParameterCatagoryIsSameTypeAs_TOptions()
        {
            ArgumentParser parser = ArgumentParser.Create("app");

            parser.CreateParameterCatagory <NoOptions>();
            Assert.IsType <NoOptions>(parser.GetParameterCatagory <NoOptions>());
        }