@Test public void tarmogoyf() { this.addDeck( Tarmogoyf.class, Tarmogoyf.class, Tarmogoyf.class, BlackLotus.class, BlackLotus.class, Shock.class, Shock.class); this.addDeck( Plains.class, Plains.class, Plains.class, Plains.class, Plains.class, Plains.class, Plains.class); startGame(new Open()); respondWith(getPlayer(0)); keep(); keep(); // pass upkeep pass(); pass(); respondWith(getSpellAction(BlackLotus.class)); pass(); pass(); respondWith(getSpellAction(Tarmogoyf.class)); respondWith(getAbilityAction(BlackLotus.BlackLotusMana.class)); respondWith(Color.GREEN); donePlayingManaAbilities(); respondWith(getMana(Color.GREEN, Color.GREEN)); pass(); pass(); assertTrue(this.game.actualState.battlefield().objects.get(0).getName().equals("Tarmogoyf")); assertEquals(1, this.game.actualState.battlefield().objects.get(0).getPower()); assertEquals(2, this.game.actualState.battlefield().objects.get(0).getToughness()); respondWith(getSpellAction(BlackLotus.class)); pass(); pass(); respondWith(getSpellAction(Shock.class)); respondWith(getTarget(Tarmogoyf.class)); respondWith(getAbilityAction(BlackLotus.BlackLotusMana.class)); respondWith(Color.RED); donePlayingManaAbilities(); respondWith(getMana(Color.RED)); pass(); pass(); assertTrue(this.game.actualState.battlefield().objects.get(0).getName().equals("Tarmogoyf")); assertEquals(2, this.game.actualState.battlefield().objects.get(0).getPower()); assertEquals(3, this.game.actualState.battlefield().objects.get(0).getToughness()); assertEquals(2, this.game.actualState.battlefield().objects.get(0).getDamage()); respondWith(getSpellAction(Shock.class)); respondWith(getTarget(Tarmogoyf.class)); donePlayingManaAbilities(); respondWith(getMana(Color.RED)); pass(); pass(); // tarmogoyf should be 3/4 and dead -- it counts itself since it's in // the yard now! GameObject tarmy = this.game.actualState.get(getGraveyard(0).objects.get(0).ID); assertEquals(0, this.game.actualState.battlefield().objects.size()); assertTrue(tarmy.getName().equals("Tarmogoyf")); assertEquals(3, tarmy.getPower()); assertEquals(4, tarmy.getToughness()); }