Esempio n. 1
0
        /// <summary>
        /// Sets the test suite status.
        /// </summary>
        /// <param name="status">The status.</param>
        void SetTestSuiteStatus(TestSuiteStatus status)
        {
            string txt;
            Color  color;

            switch (status)
            {
            case TestSuiteStatus.Pass:
                txt   = "All tests passed! NetGore should be set up correctly and ready to use.";
                color = Color.Green;
                break;

            case TestSuiteStatus.Failure:
                txt   = "A test has failed! Select the test to view the details.";
                color = Color.Red;
                break;

            case TestSuiteStatus.Running:
                txt   = "Running tests...";
                color = SystemColors.WindowText;
                break;

            case TestSuiteStatus.Waiting:
                txt   = "Waiting testing to start...";
                color = SystemColors.WindowText;
                break;

            default:
                throw new ArgumentOutOfRangeException("status");
            }

            lblStatus.ForeColor = color;
            lblStatus.Text      = txt;
        }
Esempio n. 2
0
 public static int GetTestSuiteStatusCount(TestSuiteStatus status)
 {
     if (!tsStatus2count.ContainsKey(status))
     {
         UpdateTestSuiteStatusCount(status);
     }
     return(tsStatus2count[status]);
 }
Esempio n. 3
0
        public static void UpdateTestSuiteStatusCount(TestSuiteStatus status)
        {
            int value = FilteredExplorer
                        .GetFilteredTestSuites()
                        .Where((Type ts) => TestSuiteExplorer.GetTestSuiteStatus(ts) == status)
                        .Count();

            if (tsStatus2count.ContainsKey(status))
            {
                tsStatus2count[status] = value;
            }
            else
            {
                tsStatus2count.Add(status, value);
            }
        }
Esempio n. 4
0
 /// <summary>
 /// Value to string symbol converter
 /// </summary>
 /// <param name="status"></param>
 /// <returns>user friendly string representation</returns>
 public static string StatusSymbol(TestSuiteStatus status)
 {
     switch (status)
     {
         case TestSuiteStatus.UNKNOWN:
             return "??";
         case TestSuiteStatus.SKIP:
             return "➥";
         case TestSuiteStatus.PASS:
             return "✓";
         case TestSuiteStatus.WARNING:
             return "!!";
         case TestSuiteStatus.ERROR:
             return "✘";
         default:
             return "";
     }
 }
Esempio n. 5
0
        static void LogDetailledErrors(ICollection <Assembly> asms)
        {
            foreach (Assembly asm in asms)
            {
                AssemblyStatus asmStatus = GetAssemblyStatus(asm);
                string         asmName   = asm.GetName().Name;
                switch (asmStatus)
                {
                case AssemblyStatus.WARNING:
                    Warn($"[{StatusSymbol(asmStatus)}] {asmName} > {GetAssemblyError(asm).Message}");
                    break;

                case AssemblyStatus.ERROR:
                    Err($"[{StatusSymbol(asmStatus)}] {asmName} > {GetAssemblyError(asm)}");
                    break;

                case AssemblyStatus.UNKNOWN:
                    Info($"[{StatusSymbol(asmStatus)}] {asmName} > Not Run Yet");
                    break;

                default:
                    break;
                }
                //Errored tests display
                foreach (Type testSuite in GetTestSuites(asm))
                {
                    TestSuiteStatus tsStatus = GetTestSuiteStatus(testSuite);
                    if (tsStatus is TestSuiteStatus.PASS)
                    {
                        continue;
                    }
                    switch (tsStatus)
                    {
                    case TestSuiteStatus.WARNING:
                    case TestSuiteStatus.SKIP:
                        Warn($"    [{StatusSymbol(tsStatus)}] {testSuite.Name} > {GetTestSuiteError(testSuite)}");
                        break;

                    case TestSuiteStatus.ERROR:
                        Err($"    [{StatusSymbol(tsStatus)}] {testSuite.Name} > {GetTestSuiteError(testSuite)}");
                        break;

                    case TestSuiteStatus.UNKNOWN:
                        Info($"    [{StatusSymbol(tsStatus)}] {testSuite.Name} > Not Run Yet");
                        break;

                    default:
                        break;
                    }

                    foreach (MethodInfo test in GetTests(testSuite))
                    {
                        TestStatus tStatus = GetTestStatus(test);
                        switch (tStatus)
                        {
                        case TestStatus.SKIP:
                            Warn($"        [{StatusSymbol(tStatus)}] {testSuite.Name}.{test.Name} > {GetTestError(test)}");
                            continue;

                        case TestStatus.ERROR:
                            Err($"        [{StatusSymbol(tStatus)}] {testSuite.Name}.{test.Name} > {GetTestError(test)}");
                            continue;

                        case TestStatus.UNKNOWN:
                            Info($"        [{StatusSymbol(tStatus)}] {testSuite.Name}.{test.Name} > Not Run Yet");
                            continue;

                        default:
                            break;
                        }
                    }
                }
            }
        }
Esempio n. 6
0
        /// <summary>
        /// Sets the test suite status.
        /// </summary>
        /// <param name="status">The status.</param>
        void SetTestSuiteStatus(TestSuiteStatus status)
        {
            string txt;
            Color color;

            switch (status)
            {
                case TestSuiteStatus.Pass:
                    txt = "All tests passed! NetGore should be set up correctly and ready to use.";
                    color = Color.Green;
                    break;

                case TestSuiteStatus.Failure:
                    txt = "A test has failed! Select the test to view the details.";
                    color = Color.Red;
                    break;

                case TestSuiteStatus.Running:
                    txt = "Running tests...";
                    color = SystemColors.WindowText;
                    break;

                case TestSuiteStatus.Waiting:
                    txt = "Waiting testing to start...";
                    color = SystemColors.WindowText;
                    break;

                default:
                    throw new ArgumentOutOfRangeException("status");
            }

            lblStatus.ForeColor = color;
            lblStatus.Text = txt;
        }
Esempio n. 7
0
 /// <summary>
 /// </summary>
 /// <param name="testSuite"></param>
 /// <param name="status"></param>
 public static void SetTestSuiteStatus(Type testSuite, TestSuiteStatus status)
 {
     testSuite2Status[testSuite] = status;
 }