Beispiel #1
0
        public void Give_accumulator_after_the_program_terminates(
            string programDescription,
            int expectedAccumulatorValue)
        {
            // Given
            var program = ProgramParser.Parse(programDescription);

            // When
            var(actualAccumulatorValue, isProgramTerminates, _) = IsolatedProgramRunner.Execute(program);

            // Then
            Assert.Equal(expectedAccumulatorValue, actualAccumulatorValue);
            Assert.True(isProgramTerminates);
        }
Beispiel #2
0
        public void Give_accumulator_before_the_program_run_an_instruction_a_second_time(
            string programDescription,
            int expectedAccumulatorValue)
        {
            // Given
            var program = ProgramParser.Parse(programDescription);

            // When
            var(actualAccumulatorValue, _, isInfiniteLoop) = IsolatedProgramRunner.Execute(program);

            // Then
            Assert.Equal(expectedAccumulatorValue, actualAccumulatorValue);
            Assert.True(isInfiniteLoop);
        }