Revert rollback changes, fix rollback when extra turn was taken during an opponent's turn.

This commit is contained in:
Quercitron 2016-10-31 02:51:40 +03:00
parent 43581cafa3
commit 75432f5b61
3 changed files with 53 additions and 7 deletions

View file

@ -0,0 +1,34 @@
package org.mage.test.rollback;
import mage.constants.PhaseStep;
import mage.constants.Zone;
import org.junit.Test;
import org.mage.test.serverside.base.CardTestPlayerBase;
/**
*
* @author Quercitron
*/
public class ExtraTurnTest extends CardTestPlayerBase {
// Test that rollback works correctly when extra turn is taken during an opponent turn.
@Test
public void testThatRollbackWorksCorrectlyWithExtraTurn() {
addCard(Zone.BATTLEFIELD, playerA, "Island", 3);
// The next sorcery card you cast this turn can be cast as though it had flash.
addCard(Zone.HAND, playerA, "Quicken");
// Take an extra turn after this one.
addCard(Zone.HAND, playerA, "Time Walk");
castSpell(2, PhaseStep.PRECOMBAT_MAIN, playerA, "Quicken");
castSpell(2, PhaseStep.PRECOMBAT_MAIN, playerA, "Time Walk");
rollbackTurns(3, PhaseStep.PRECOMBAT_MAIN, playerA, 0);
setStopAt(4, PhaseStep.PRECOMBAT_MAIN);
execute();
assertActivePlayer(playerA);
}
}