Example #1
0
        private ICommandCache GenerateCommandCache()
        {
            var cache = new CommandCache();

            var command1 = new Command("Command1", '-', "This is command 1 for use in unit tests",
                                       new[]
            {
                new ParameterOption("Param1", true, "Parameter 1"),
                new ParameterOption("Param2", true, "Parameter 2"),
                new ParameterOption("Param3", true, "Parameter 3"),
                new ParameterOption("TestParam1", true, "Parameter 3"),
                new ParameterOption("FlagParam1", false, "Flagged Parameter 1"),
                new ParameterOption("FlagParam2", false, "Flagged Parameter 2"),
            });

            var command2 = new Command("Command2", '-', "This is command 2 for use in unit tests",
                                       new[]
            {
                new ParameterOption("Param1", true, "Parameter 1"),
                new ParameterOption("Param2", true, "Parameter 2"),
                new ParameterOption("Param3", true, "Parameter 3"),
                new ParameterOption("FlagParam1", false, "Flagged Parameter 1"),
                new ParameterOption("FlagParam2", false, "Flagged Parameter 2"),
            });

            cache.AddCommand(command1);
            cache.AddCommand(command2);

            return(cache);
        }
        public void WhenAddingNewCommandWithSameName_AssertException()
        {
            var commander = new CommandCache();

            var command1 = new Command("SomeCommand", '-', null, null);
            var command2 = new Command("SomeCommand", '-', null, null);

            commander.AddCommand(command1);

            Should.Throw <Exception>(() => commander.AddCommand(command2));
        }
        public void WhenAddingNullCommand_AssertExceptionThrown()
        {
            var commander = new CommandCache();

            Should.Throw <ArgumentNullException>(() => commander.AddCommand(null));
        }