If you go through with the `CouponApplicator` idea, you could just test here that Spree::CouponApplicator has new called on it with the right argument, and then that it has `apply` called on it afterwards. The test for `CouponApplicator#apply` (and all the promotion setup in here) would be over there instead.