Every item you make needs to be tested before you create a pull request for review. In your PR you should include a checklist that any testers will need to run through and verify are working before they can conclude that the item is working correctly. This list should include any basic function that the item needs to be able to perform, as well as any possible edge cases you can think of.
Example
Consider the item Explosive Plating. A unit test checklist would include:
- When a unit holding this item is hit with any form of damage from another enemy, it should fire a cinder damaging the enemy.
- The cinder should only damage the enemy that originally attacked the unit.
- The cinder should not fire when the unit takes damage from another source such as Burn, Shock, Expose or Volatile.
- The cinder should have a base damage of 12 and an increase of +3 for every stack of the item held by the unit. Test the item functionality at 1 stack and maximum stacks to ensure damage is calculated correctly.
- If the target is burning, the cinder should deal an additional 300% damage.
- This item should not trigger OnHit procs, to prevent an infinite loop occurring if the enemy also has this item or similar.