Exemple #1
0
 public MainController()
 {
     game   = new Game();
     reader = new MazeReader(game);
     reader.CreateLinks(reader.ReadMaze(4));
     mazeView  = new MazeView(game);
     inputView = new InputView();
     run();
     Console.ReadLine();
 }
        public void GivenMultipleMirrorTypesWhenReadThenMazeHasMultipleMirrorTypes()
        {
            fakeStreamReader = new FakeStreamReader(CreateQueueWithMultipleMirrorTypes());
            mazeFileReader   = new MazeReader(fakeStreamReader);

            mazeFileReader.Read(mazeParams);

            AssertDimensions();
            AssertMultipleMirrorTypes();
            AssertLaserStart();
        }
        public void GivenSingleTwoSidedMirrorWhenReadThenMazeHasOneMirror()
        {
            fakeStreamReader = new FakeStreamReader(CreateQueueWithSingleTwoSidedMirror());
            mazeFileReader   = new MazeReader(fakeStreamReader);

            mazeFileReader.Read(mazeParams);

            AssertDimensions();
            AssertSingleTwoSidedMirror();
            AssertLaserStart();
        }
        public void GivenNoMirrorsWhenReadThenMazeHasDimensionsAndLaserStartButNoMirrors()
        {
            fakeStreamReader = new FakeStreamReader(CreateQueueWithNoMirrors());
            mazeFileReader   = new MazeReader(fakeStreamReader);

            mazeFileReader.Read(mazeParams);

            AssertDimensions();
            Assert.IsEmpty(mazeParams.Mirrors);
            AssertLaserStart();
        }