Conjured items degrade twice as fast as normal ones. Matched by name
prefix so any "Conjured ..." item works, not just the Mana Cake.
Wrote the tests first, then the updater. Only the Mana Cake lines
changed in the approved output.
ItemUpdater has the normal rules. Brie, backstage passes and Sulfuras
subclass it and override only what differs. GildedRose picks the right
one through updater_for. Tests and approved output unchanged.
No behaviour change. Named the item strings and the 0/50 bounds, moved
the body into _update_item and return early for Sulfuras so the rest of
the ladder only deals with items that actually change.
One test per rule from the requirements, replacing test_foo. Tier
boundaries are checked on both sides, e.g. backstage passes at 11 and 10,
so an off-by-one can't slip through. All pass against the original code
with 100% branch coverage.
Approved the 30 day fixture output as-is so there is a baseline before
refactoring. Conjured Mana Cake is still wrong here, that changes later.
The approval test was also crashing with "no reporter configuration"
instead of showing a diff. pytest-approvaltests 0.2.4 doesn't work with
approvaltests 19, so pass PythonNativeReporter directly.