示例#1
0
        public void itShouldReturnFalseIfAtLeastOneFailed()
        {
            var cmdSucceeding1 = new MockCommandPreflightSucceeding();
            var cmdFailing     = new MockCommandPreflightFailing();
            var cmdSucceeding2 = new MockCommandPreflightSucceeding();

            var commands = new List <BaseCommand>();

            commands.Add(cmdSucceeding1);
            commands.Add(cmdFailing);
            commands.Add(cmdSucceeding2);

            var runner = new CommandsRunner(commands);

            var result = runner.RunPreflight();

            Assert.IsFalse(result);
        }
示例#2
0
        public void itShouldReturnFalseOnUnhandledExceptions()
        {
            var cmdSucceeding1 = new MockCommandPreflightSucceeding();
            var cmdFailing     = new MockCommandThrowingExceptionAtPreflightCheck();
            var cmdSucceeding2 = new MockCommandPreflightSucceeding();

            var commands = new List <BaseCommand>();

            commands.Add(cmdSucceeding1);
            commands.Add(cmdFailing);
            commands.Add(cmdSucceeding2);

            var runner = new CommandsRunner(commands);

            var result = runner.RunPreflight();

            Assert.IsFalse(result);
            Assert.IsTrue(cmdSucceeding1.PreflightCheckRan);
            Assert.IsTrue(cmdFailing.PreflightCheckRan);
            Assert.IsTrue(cmdSucceeding2.PreflightCheckRan);
        }
示例#3
0
        public void itShouldRunOnlyCommandsWithHasPreflightCheckSet()
        {
            var cmdSucceeding1 = new MockCommandPreflightSucceeding();
            var cmdPreflightCheckFlagNotSet = new MockCommandHasPreflightCheckButFlagNotSet();
            var cmdSucceeding2 = new MockCommandPreflightSucceeding();

            var commands = new List <BaseCommand>();

            commands.Add(cmdSucceeding1);
            commands.Add(cmdPreflightCheckFlagNotSet);
            commands.Add(cmdSucceeding2);

            var runner = new CommandsRunner(commands);

            var result = runner.RunPreflight();

            Assert.IsTrue(result);
            Assert.IsTrue(cmdSucceeding1.PreflightCheckRan);
            Assert.IsFalse(cmdPreflightCheckFlagNotSet.PreflightCheckRan);
            Assert.IsTrue(cmdSucceeding2.PreflightCheckRan);
        }
示例#4
0
        public void itShouldRunAllChecksEvenIfOneFailedMidway()
        {
            var cmdSucceeding1 = new MockCommandPreflightSucceeding();
            var cmdFailing     = new MockCommandPreflightFailing();
            var cmdSucceeding2 = new MockCommandPreflightSucceeding();

            var commands = new List <BaseCommand>();

            commands.Add(cmdSucceeding1);
            commands.Add(cmdFailing);
            commands.Add(cmdSucceeding2);

            var runner = new CommandsRunner(commands);

            var result = runner.RunPreflight();

            Assert.IsFalse(result);
            Assert.IsTrue(cmdSucceeding1.PreflightCheckRan);
            Assert.IsTrue(cmdFailing.PreflightCheckRan);
            Assert.IsTrue(cmdSucceeding2.PreflightCheckRan);
        }