コード例 #1
0
ファイル: TestRunnerAction.cs プロジェクト: waterfallc/CSpec
        /// <summary>
        /// Executes the action with specified console parameters
        /// </summary>
        /// <param name="args">application args</param>
        public void Execute(string[] args)
        {
            if (args[1] == null || args[1] == string.Empty)
            {
                console.WriteError("No arguments");
                DisplayInterface();
            }
            else
            {
                //skip the first two params, and go to the external attributes
                for (int i = 2; i < args.Length; i++)
                {
                    var command = Commands.Where(x => x.Key.ToUpper() == args[i].ToUpper()).FirstOrDefault();

                    if (command != null)
                    {
                        command.Execute(console, runner);
                    }
                }

                //Load the assembly and start testing baby!
                Assembly asm = Assembly.LoadFrom(args[1]);
                runner.RunTestOnAssembly(asm);

                console.WriteInfo("\n Tests passed: " + runner.Passed + "/" + (runner.Failed + runner.Passed));
            }
        }
コード例 #2
0
        //TODO: add action parsing code.

        /// <summary>
        /// Runs specified Action on the console.
        /// </summary>
        /// <param name="args">console arguments</param>
        public void Run(string[] args)
        {
            if (args == null || args.Length == 0)
            {
                DisplayHelp();
            }
            else
            {
                try
                {
                    string actionKey = args[0];

                    if (actionKey.ToUpper() == "help".ToUpper())
                    {
                        DisplayHelp();
                    }

                    foreach (var action in actions)
                    {
                        //Match actions
                        if (action.Key.ToUpper() == actionKey.ToUpper())
                        {
                            action.Execute(args);
                        }
                    }
                }
                catch (Exception ex)
                {
                    console.WriteError(ex.Message);
                }
            }
        }
コード例 #3
0
        /// <summary>
        /// Executes the action with specified console parameters
        /// </summary>
        /// <param name="args">application args</param>
        public void Execute(string[] args)
        {
            if (args[1] == null || args[1] == string.Empty)
            {
                console.WriteError("No arguments");
                DisplayInterface();
            }
            else
            {
                for (int i = 2; i < args.Length; i++)
                {
                    var command = Commands.Where(x => x.Key.ToUpper() == args[i].ToUpper()).FirstOrDefault();

                    if (command != null)
                    {
                        command.Execute(console, runner);
                    }
                }

                Assembly asm = Assembly.LoadFile(args[1]);
                runner.RunTestOnAssembly(asm);

                console.WriteInfo("\n Tests passed: " + runner.Passed + "/" + (runner.Failed + runner.Passed));
            }
        }