Exemple #1
0
        public void TestLoadPrisonAndAttach()
        {
            using (ShimsContext.Create())
            {
                PrisonTestsHelper.PrisonLockdownFakes();

                Prison prison = new Prison();
                prison.Tag = "uhtst";
                PrisonRules prisonRules = new PrisonRules();
                prisonRules.CellType       = RuleType.None;
                prisonRules.PrisonHomePath = @"c:\prison_tests\p3";

                prison.Lockdown(prisonRules);

                PrisonTestsHelper.PrisonLoadFakes(prison.ID);
                Prison prisonLoaded = Prison.LoadPrisonAndAttach(prison.ID);

                Assert.IsTrue(prisonLoaded != null);
                Assert.IsTrue(prisonLoaded.ID == prison.ID);
            }
        }
        public void LoadPrison()
        {
            // Arrange


            Prison prison = new Prison();

            prison.Tag = "uhtst";

            PrisonRules prisonRules = new PrisonRules();

            prisonRules.PrisonHomePath = @"c:\prison_tests\p1";
            prisonRules.CellType       = RuleType.WindowStation;

            prison.Lockdown(prisonRules);

            // Act
            var prisonLoaded = Prison.LoadPrisonAndAttach(prison.ID);

            Process process = prison.Execute(
                @"c:\windows\system32\cmd.exe",
                @"/c exit 667");

            process.WaitForExit();


            // Assert
            Process process2 = prisonLoaded.Execute(
                @"c:\windows\system32\cmd.exe",
                @"/c exit 667");

            process2.WaitForExit();

            // Assert
            Assert.AreEqual(667, process.ExitCode);

            prison.Destroy();
        }