Example #1
0
        public void RunTests(SpringPaths paths)
        {
            Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            isAborted = false;
            var  result       = new BatchRunResult();
            bool usingOptirun = !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("OPTIRUN"));

            foreach (var tr in TestCases)
            {
                foreach (var b in Benchmarks)
                {
                    if (isAborted)
                    {
                        return;
                    }
                    b.ModifyModInfo(tr);
                    string log = null;
                    try {
                        run = new SpringRun();
                        log = run.Start(paths, tr, b);
                    } catch (Exception ex) {
                        Trace.TraceError(ex.ToString());
                    } finally {
                        b.RestoreModInfo();
                    }
                    try {
                        if (usingOptirun)  // leave some time for optimus/primus to rest
                        {
                            Thread.Sleep(5000);
                        }
                        result.AddRun(tr, b, log);
                        RunCompleted(tr, b, log);
                    } catch (Exception ex) {
                        Trace.TraceError(ex.ToString());
                    }
                }
            }
            if (isAborted)
            {
                return;
            }
            AllCompleted(result);
        }
        public void RunTests(SpringPaths paths) {
            Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
            isAborted = false;
            var result = new BatchRunResult();
            bool usingOptirun = !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("OPTIRUN"));

            foreach (var tr in TestCases) {
                foreach (var b in Benchmarks) {
                    if (isAborted) return;
                    b.ModifyModInfo(tr);
                    string log = null;
                    try {
                        run = new SpringRun();
                        log = run.Start(paths, tr, b);
                    } catch (Exception ex) {
                        Trace.TraceError(ex.ToString());
                    } finally {
                        b.RestoreModInfo();
                    }
                    try {
                        if(usingOptirun) { // leave some time for optimus/primus to rest 
                           Thread.Sleep(5000);
                        }
                        result.AddRun(tr, b, log);
                        RunCompleted(tr, b, log);
                    } catch (Exception ex) {
                        Trace.TraceError(ex.ToString());
                    }
                }
            }
            if (isAborted) return;
            AllCompleted(result);
        }