Assert that items' price are >= 0 after discount

We are receiving some errors about some items being negative after the
discount, but we have no examples to reproduce.

This will raise an AssertionError with the discount percentage, the items'
price before and after the discount. With this, the next time we hear about
that problem, we can reproduce and fix it

Change-Id: Id46058fb88eb97f94ba1300e225c07a5b3ac9c6b