mage/Mage.Tests
Alex Vasile b40bde5e12
[AFC] Implemented Share the Spoils (#8583)
* Preliminary implementation of Share the Spoils.

* Added tracking of cards in exile to MageTestPlayerBase in order to help with testing of cards such as Share the Spoils which put and take cards out of exile a lot.

* Moved Share the Spoils to the correct set list.

* Fixed bug with using ’ instead of ' for card text.

* Add method to assert number of cards exiled into a specific exile zone.

* Further implementation of ShareTheSpoils and it's tests.

* Fixed a bug in the calcualtiong of exileNUmber. (I misunderstood what the copy() method was for)

* - Added a watcher which should limit player to only cast the spell once per turn.
- Fixed the tests to run properly (using .LOST instead of .LOSES for the GameEvent).
- A bit of cleaning up of the class

* Updated tests and card to capture both conceding and losing the game through other means.

* Further implementation. All parts are working (though not correctly).

* All pieces are now working. But, both the spend any mana and exile a card off the top of library activate when ANY card is played from exile, not just one exiled with Share the Spoils.

* Replaced changed how I move card from top of library to correct exile zone. Instead of using moveCards() and moveToAnotherZone(), I am not using moveCardsToExile().

* A new card is now properly exiled whenever one is played with Share the Spoils

* Moved inner class out and passing exileId as parameter instead

* Updated text based on comments

* Added several more tests

* Made changes to how exileId is handled based on comments

* Made changes based on comments

* Further changes based on comments

* Add a few more tests (will have to fix them once the exile zone issue is fixed)

* Added workaround for #8706

* Get most of the tests working

* Simplified cardId handling

* Reformat file based on comment

* - Added setStrictChooseMode to all tests
- Properly using checkPlayableAbility for all checks where things can't be played/cast.

* Fixed a missing getMainCardId call that made difficult cards unplayable

* - Simplified handling of casting only once per turn. I don't see the point to keeping the MageReference object. using a simple boolean instead
- This also fixes a bug where multiple cards could be played in the same turn.

* Fixed test for difficult cards.

* Reworked spend mana effect based on Dead Man's chest

* Added a check again a null watcher

* Fixed typo in checkManaSpendingForOtherExileSource

* Fixed tests to use proper checkPlayableAbility syntax.

Co-authored-by: Evan Kranzler <theelk801@gmail.com>
2022-03-15 18:34:36 -04:00
..
config Code cleanup (removed unused log4j setting files, added extra info, samples and instructions, removed java logs) 2020-01-26 16:30:42 +04:00
src [AFC] Implemented Share the Spoils (#8583) 2022-03-15 18:34:36 -04:00
CMDNorinTheWary.dck * Updated decks from test project after change of collectors numbers. 2018-05-11 00:51:47 +02:00
CommanderAnafenza_WBG.dck * Updated decks from test project after change of collectors numbers. 2018-05-11 00:51:47 +02:00
CommanderDuel.dck Change AE to Ae 2016-09-17 16:59:24 +00:00
CommanderDuel_Karador_BGW.dck * Updated decks from test project after change of collectors numbers. 2018-05-11 00:51:47 +02:00
CommanderDuel_Mairisil_UBR.dck * Shifting Shadows - Fixed not proper handling of gained triggered abilities during step resolution of Shifting Shadows effect (fixes #6571). 2020-06-03 15:07:52 +02:00
CommanderDuel_Partners.dck Fix Skyfire Phoenix's triggered ability. 2020-02-01 19:05:46 -05:00
CommanderDuel_UW.dck Added possibility to set a specific deck for a test. 2015-06-14 23:23:26 +02:00
CommanderOviya.dck * Myth Unbound - Fixed the two working abilities(fixe #5347). 2019-01-07 16:39:49 +01:00
JustLands.txt Text import will automatically start sideboard after a single blank line. Added a JUnit test for TxtDeckImporter. 2016-05-30 23:03:43 -04:00
Oathbreaker_UR.dck * Oathbreaker format - Fixed that signate spell didn't return to command zone. Added unit test for oathbreaker format (fixes #6695). 2020-06-23 09:18:40 +02:00
pom.xml Dev: pom clean up, improved parent/child structure; 2021-10-03 18:11:56 +04:00
Power Hungry.dck * Savage Summoning - Fixed that it did not work to cast a commander from command zone. 2015-07-02 23:38:37 +02:00
RB Aggro.dck * Performance: optimized cards database to increase tests and boosters generation; 2021-08-12 23:59:08 +04:00
UW Control.dck Added Mage.Tests project. Update server for test operations. Implemented bdd classes. 2010-12-20 01:03:12 +03:00