示例#1
0
        public void FieldCanHaveCellSet()
        {
            Field field = new Field(1, 1);
            field.SetCell(0, 0);

            Assert.IsTrue(field.GetCell(0, 0));
        }
示例#2
0
        public void DeadCellWith3NeighboursLives()
        {
            Field field = new Field(3, 3);
            field.SetCell(0, 0);    //Neighbour
            field.SetCell(1, 0);    //Neighbour
            field.SetCell(2, 0);    //Neighbour

            field.Update();

            Assert.IsTrue(field.GetCell(1, 1));
        }
示例#3
0
        public void CellWithEnoughNeighboursLives()
        {
            Field field = new Field(3, 3);
            field.SetCell(1, 1);    //Test cell
            field.SetCell(0, 0);    //Neighbour
            field.SetCell(1, 0);    //Neighbour

            field.Update();

            Assert.IsTrue(field.GetCell(1, 1));
        }
示例#4
0
 public void FieldThrowsExceptionWhenSettingCellsBeyondWidth()
 {
     Field field = new Field(1, 1);
     Assert.IsFalse(field.GetCell(1, 0));
 }
示例#5
0
 public void FieldThrowsExceptionWhenGettingCellsBeyondHeight()
 {
     Field field = new Field(1, 1);
     Assert.IsFalse(field.GetCell(0, 1));
 }
示例#6
0
        public void FieldIsConstructedWithAllOffCells()
        {
            Field field = new Field(1, 1);

            Assert.IsFalse(field.GetCell(0, 0));
        }
示例#7
0
        public void OvercrowdedCellDies()
        {
            Field field = new Field(3, 3);
            field.SetCell(1, 1);    //Test cell
            field.SetCell(0, 0);    //Neighbour
            field.SetCell(1, 0);    //Neighbour
            field.SetCell(2, 0);    //Neighbour
            field.SetCell(0, 1);    //Neighbour

            field.Update();

            Assert.IsFalse(field.GetCell(1, 1));
        }
示例#8
0
        public void LonelyCellDies()
        {
            Field field = new Field(3, 3);
            field.SetCell(1, 1);

            field.Update();

            Assert.IsFalse(field.GetCell(1, 1));
        }