Esempio n. 1
0
 private static bool evaluateObject(ref TimeOfDay obj, evaluateObjectDelegate testFunction, ref string errorMessage, string onError, ref int errorCount)
 {
     if (!testFunction(obj))
     {
         errorCount++;
         errorMessage += onError + "\r";
         return(false);
     }
     return(true);
 }
Esempio n. 2
0
        public static string _blackBoxTest()
        {
            TimeOfDay a, b, c;
            int       i;
            string    message    = "timeOfDay test\r";
            Random    r          = new Random(0xffffff);
            int       errCount   = 0;
            int       testLength = 10000;
            int       maxErrors  = 10;
            evaluateObjectDelegate objectValidTest = new evaluateObjectDelegate(testValid);

            message += "general testing\r";

            for (i = 0; (i < testLength) && (errCount < maxErrors); i++)
            {
                a = new TimeOfDay(r.Next(-124, 124), r.Next(-160, 160), r.Next(-160, 160));
                b = new TimeOfDay(r.Next(0, 24), r.Next(0, 60), r.Next(0, 60));
                c = new TimeOfDay(r.Next(0, 24), r.Next(0, 60), r.Next(0, 60));
                evaluateObject(ref a, objectValidTest, ref message, "invalid object", ref errCount);
                evaluateObject(ref b, objectValidTest, ref message, "invalid object", ref errCount);
                evaluateObject(ref c, objectValidTest, ref message, "invalid object", ref errCount);

                //test comarisons
                if (!comparisonTest(a, b) && comparisonTest(a, c) && comparisonTest(b, c))
                {
                    message += " could not make valid < > == comparisions\r";
                    errCount++;
                }

                //test overflow
                TimeSpan  ts = new TimeSpan(0, 24, 0, 0);
                TimeOfDay t  = a;
                t += ts;
                if ((!t.overflow) || (!testValid(t)))
                {
                    message += "time failed to overflow\r";
                    errCount++;
                }
            }
            if (errCount >= maxErrors)
            {
                message += String.Format("testing halted because of to many errors (max errors = {0})\r", maxErrors);
            }
            message += String.Format("{0} errors in {1} tests\r", errCount, i);
            errCount = 0;
            return(message);
        }