Esempio n. 1
0
 public void GetCoordinatesCorrectlyPassesCoordinates(string input, int expectedX, int expectedY)
 {
     using (var inputStream = input.ToStream())
     {
         using (var ui = new StreamUserInteraction(inputStream, new MemoryStream()))
         {
             var coordinates = ui.GetCoordinates(10, 10);
             coordinates.X.ShouldBe(expectedX);
             coordinates.Y.ShouldBe(expectedY);
         }
     }
 }
Esempio n. 2
0
        public void GetCoordinatesAsksForCoordinatesUntilSuccesfull(string input, string expectedOutput)
        {
            using (var inputStream = input.ToStream())
            {
                var outputStream = new MemoryStream();
                using (var ui = new StreamUserInteraction(inputStream, outputStream))
                {
                    ui.GetCoordinates(10, 10);
                }

                outputStream.Position = 0;
                var streamReader = new StreamReader(outputStream);
                streamReader.ReadToEnd().ShouldBe(expectedOutput);
            }
        }
Esempio n. 3
0
        public static string Execute(string input, ISquare[,] grid)
        {
            using (var inputStream = input.ToStream())
            {
                using (var outputStream = new MemoryStream())
                {
                    using (var ui = new StreamUserInteraction(inputStream, outputStream))
                    {
                        var gameLoop = new GameLoop(grid, ui);
                        gameLoop.Run();
                    }

                    outputStream.Position = 0;
                    using (var streamReader = new StreamReader(outputStream))
                    {
                        return(streamReader.ReadToEnd());
                    }
                }
            }
        }