public void SetStatus_SetsStatusToDead_ForRowAndColumn(int row,
                                                               int coloumn)
        {
            // Arrange
            UnlimitedBoard sut = CreateSut();

            sut.SetStatus(row,
                          coloumn,
                          Cell.Status.Alive);

            // Act
            sut.SetStatus(row,
                          coloumn,
                          Cell.Status.Dead);

            // Assert
            sut.GetStatus(row,
                          coloumn).ShouldEqual(Cell.Status.Dead);
        }
        public void SetStatus_SetsStatusToDead_ForRowWithOtherAlive()
        {
            // Arrange
            UnlimitedBoard sut = CreateSut();

            sut.SetStatus(0,
                          0,
                          Cell.Status.Alive);
            sut.SetStatus(0,
                          1,
                          Cell.Status.Alive);

            // Act
            sut.SetStatus(0,
                          1,
                          Cell.Status.Dead);

            // Assert
            sut.GetStatus(0,
                          0).ShouldEqual(Cell.Status.Alive);
            sut.GetStatus(0,
                          1).ShouldEqual(Cell.Status.Dead);
        }
        public void SetStatus_SetsStatusToDead_ForAlreadyDead()
        {
            // Arrange
            UnlimitedBoard sut = CreateSut();

            // Act
            sut.SetStatus(1,
                          1,
                          Cell.Status.Dead);

            // Assert
            sut.GetStatus(1,
                          1).ShouldEqual(Cell.Status.Dead);
        }