adding handling & tests for discounts greater than cost... why does test fail?