Пример #1
0
        public void TestExitEarlyFault2()
        {
            Variant foo = new Variant("foo");

            // FaultOnEarlyExit faults when StartOnCall is used and stop message is not sent

            Dictionary <string, Variant> args = new Dictionary <string, Variant>();

            args["CommandLine"]      = new Variant("CrashingFileConsumer.exe");
            args["StartOnCall"]      = foo;
            args["FaultOnEarlyExit"] = new Variant("true");

            var w = new WindowsDebuggerHybrid(null, "name", args);

            w.SessionStarting();
            w.IterationStarting(1, false);

            w.Message("Action.Call", foo);

            System.Threading.Thread.Sleep(1000);

            w.IterationFinished();

            Assert.AreEqual(true, w.DetectedFault());
            Fault f = w.GetMonitorData();

            Assert.NotNull(f);
            Assert.AreEqual("ProcessExitedEarly", f.folderName);


            w.SessionFinished();
            w.StopMonitor();
        }
Пример #2
0
        public void TestExitEarlyFault3()
        {
            Variant foo = new Variant("foo");

            // FaultOnEarlyExit doesn't fault when StartOnCall is used

            Dictionary <string, Variant> args = new Dictionary <string, Variant>();

            args["CommandLine"]      = new Variant("CrashableServer.exe 127.0.0.1 6789");
            args["StartOnCall"]      = foo;
            args["FaultOnEarlyExit"] = new Variant("true");

            var w = new WindowsDebuggerHybrid(null, "name", args);

            w.SessionStarting();
            w.IterationStarting(1, false);

            w.Message("Action.Call", foo);

            w.IterationFinished();

            Assert.AreEqual(false, w.DetectedFault());

            w.SessionFinished();
            w.StopMonitor();
        }
Пример #3
0
        public void TestExitEarlyFault1()
        {
            Variant foo = new Variant("foo");
            Variant bar = new Variant("bar");

            // FaultOnEarlyExit doesn't fault when stop message is sent

            Dictionary <string, Variant> args = new Dictionary <string, Variant>();

            args["CommandLine"]       = new Variant("CrashingFileConsumer.exe");
            args["StartOnCall"]       = foo;
            args["WaitForExitOnCall"] = bar;
            args["FaultOnEarlyExit"]  = new Variant("true");

            var w = new WindowsDebuggerHybrid(null, "name", args);

            w.SessionStarting();
            w.IterationStarting(1, false);

            w.Message("Action.Call", foo);
            w.Message("Action.Call", bar);

            w.IterationFinished();

            Assert.AreEqual(false, w.DetectedFault());

            w.SessionFinished();
            w.StopMonitor();
        }
Пример #4
0
        public void TestExitEarlyFault4()
        {
            // FaultOnEarlyExit doesn't fault when restart every iteration is true

            Dictionary <string, Variant> args = new Dictionary <string, Variant>();

            args["CommandLine"]       = new Variant("CrashableServer.exe 127.0.0.1 6789");
            args["RestartOnEachTest"] = new Variant("true");
            args["FaultOnEarlyExit"]  = new Variant("true");

            var w = new WindowsDebuggerHybrid(null, "name", args);

            w.SessionStarting();
            w.IterationStarting(1, false);

            w.IterationFinished();

            Assert.AreEqual(false, w.DetectedFault());

            w.SessionFinished();
            w.StopMonitor();
        }