public void TestFunctionsReviveCopy()
        {
            var eng = new Engine.BaseTypes.Engine(0);

            var cell1 = eng.getPlayerCells()[1];
            cell1.setVitality(0);

            var cell2 = eng.getOpponentCells()[20];
            cell2.setValue(new Digit(5));

            var revive = new FunctionRevive();
            revive.exec(new Digit(1));

            Assert.AreEqual(1, cell1.getVitality());

            var copy = new FunctionCopy();
            var rescopy = copy.exec(new Digit(20));

            Assert.AreEqual(true, rescopy.isDigit());
            Assert.AreEqual(5, (rescopy as Digit).digit);
        }
        public void TestFunctionsIncAndDec()
        {
            var eng = new Engine.BaseTypes.Engine(0);

            var inc = new FunctionInc();
            var dec = new FunctionDec();

            inc.exec(new Digit(0));
            dec.exec(new Digit(0));

            var cell1 = eng.getPlayerCells()[0];
            var cell2 = eng.getOpponentCells()[255];

            Assert.AreEqual(Cell.START_VITALITY, cell1.getVitality());
            Assert.AreEqual(Cell.START_VITALITY - 1, cell2.getVitality());
        }