示例#1
0
        public void CheckOpenFields()
        {
            //Given
            int rowCoordiante  = 0;
            int columCoodinate = 0;

            InitializeTestField();
            int height = testField.GetLength(0);
            int width  = testField.GetLength(1);

            //When
            MinesweeperSpiel minesweeperSpiel = new MinesweeperSpiel(testField);

            minesweeperSpiel.DeckeAuf(rowCoordiante, columCoodinate);

            //Than
            for (int row = 0; row < height; row++)
            {
                for (int colum = 0; colum < width; colum++)
                {
                    if (minesweeperSpiel.Inhalt(row, colum) != Feld.Mine)
                    {
                        Assert.That(minesweeperSpiel.IstAufgedeckt(row, colum), Is.EqualTo(true));
                    }
                }
            }
        }
示例#2
0
        public void SetFlag()
        {
            // Given
            int rowCoordiante   = 0;
            int columnCoodinate = 0;

            InitializeTestField();

            // When
            MinesweeperSpiel minesweeperSpiel = new MinesweeperSpiel(testField);

            // Set Flag /Than Field is Market with Flag
            minesweeperSpiel.SetzeFahnenMarkierung(rowCoordiante, columnCoodinate);
            Assert.That(minesweeperSpiel[rowCoordiante, columnCoodinate], Is.EqualTo(Feld.Fahne));
            // Set Flag at Flag that Market Field /Than Flag is Removed from Field
            minesweeperSpiel.SetzeFahnenMarkierung(rowCoordiante, columnCoodinate);
            Assert.That(minesweeperSpiel[rowCoordiante, columnCoodinate], Is.EqualTo(Feld.Unbekannt));

            // open Field that is marked with Flag
            minesweeperSpiel.DeckeAuf(0, 4);
            Feld zustand = minesweeperSpiel[0, 4];

            minesweeperSpiel.SetzeFahnenMarkierung(4, 0);

            // Than wont be marked with flag
            Assert.That(minesweeperSpiel[0, 4], Is.EqualTo(zustand));
        }
示例#3
0
        public void OpenField()
        {
            //Given
            InitializeTestField();
            MinesweeperSpiel minesweeperSpiel = new MinesweeperSpiel(testField);

            //When /Than
            Assert.That(() => minesweeperSpiel.DeckeAuf(2, 2), Throws.InvalidOperationException);
            //When  /Than
            Assert.That(() => minesweeperSpiel.DeckeAuf(20, 20), Throws.ArgumentException);

            //When
            minesweeperSpiel.DeckeAuf(0, 0);
            Feld zustand = minesweeperSpiel[0, 0];

            minesweeperSpiel.DeckeAuf(0, 0);
            //Than
            Assert.That(minesweeperSpiel[0, 4], Is.EqualTo(zustand));
        }
示例#4
0
        public void FieldIndexer()
        {
            //Given
            InitializeTestField();
            MinesweeperSpiel minesweeperSpiel = new MinesweeperSpiel(testField);

            //When /Than
            minesweeperSpiel.SetzeFahnenMarkierung(0, 0);
            Assert.That(minesweeperSpiel[0, 0], Is.EqualTo(Feld.Fahne));

            //When /Than
            minesweeperSpiel.DeckeAuf(1, 1);
            Assert.That(minesweeperSpiel[1, 1], Is.EqualTo(Feld.N1));
        }
示例#5
0
        public void Won()
        {
            //given
            int width           = 20;
            int height          = 20;
            int rowCoordinate   = 6;
            int columCoordinate = 7;

            int[,] spielfeld = new int[height, width];
            spielfeld[rowCoordinate, columCoordinate] = -1;
            //when /Than
            MinesweeperSpiel minesweeperSpiel = new MinesweeperSpiel(spielfeld);

            minesweeperSpiel.DeckeAuf(0, 0);
            Assert.That(minesweeperSpiel.SpielGewonnen(), Is.EqualTo(true));
        }