Why isn't software charged per unit test?