Commit Graph

2 Commits

Author SHA1 Message Date
JustArchi
25e549b7e2 Code cleanup after #2004 2020-10-21 18:48:13 +02:00
Sebastian Göls
1f8b68f5ee Implement #852 (#2004)
* Update Actions.cs, Bot.cs, and BotConfig.cs

* First round of refactoring

* Check all badge pages

* Update Bot.cs

* Make sure multiple pages of badges work with foil badges and Make item selection algorithm work with all kinds of amount values we could get from Valve

* Change order of params in Actions.SendInventory(...), Cache amount of cards for game ids, Count card elements on page when fetching card count per game, Calculate items to send for all games in parallel

* Add unit tests

* Make sure only one real app id and one asset type are present while computing cards to send and Test it

* Update ArchiWebHandler.cs

* Update Bot.cs

* Fix iteration over badge pages

* Update Bot.cs

* Make stackable item stacks smaller if possible

* Simplify code based on changing stack size of stackable items and Adapt tests

* Consider only cards of the same rarity to be of one set and Add handling of already crafted level 5 badges

* Implement feedback

* Update Bot.cs

* Update Bot.cs

* Implement feedback from review

* Adapt tests

* Improve XPath efficiency

* Check real result for additional values in unit tests

* Implement feedback

* Add additional test combining classID, type and rarity

* Make collections readonly wherever you can

* Optimize misc. code and Add SetTypesToComplete to BotConfig

* Throw exception if we have more card types than cards per set

* Remove SendSetsOnCompleted and Make CompleteTypesToSend empty per default

* Fix existing unit tests and add new ones due to new exception

* Please nitpicky Archi

* Update Bot.cs

* Change expected exception type

* Make appID constants local

* Update Bot.cs and BotConfig.cs

* Do as JetBrains Rider says

* Only fetch card count for badge if we have cards for it

* Improve naming and fix handling of URIs for foil badges

* Add Bot.LoadCardsPerSet(...), Bot.GetItemsForFullSets(...) and Trading.GetInventorySets(...) to public API

* Let AWH do its job

* Make Bot.GetPossiblyCompletedBadgeAppIDs() part of public API as well
2020-10-21 18:41:20 +02:00