public void Should_return_true_for_at_least_x_items()
            {
                var subject   = new BuyXItemsGetYPercentOff("item-1", 2, 0.25m);
                var orderitem = new OrderItem {
                    Identifier = subject.ItemId, ItemCost = 20m, Quantity = 2
                };
                var secondOrderitem = new OrderItem {
                    Identifier = subject.ItemId, ItemCost = 20m, Quantity = 2
                };

                Assert.IsTrue(subject.MatchesItem(orderitem));
                Assert.IsTrue(subject.MatchesItem(secondOrderitem));
            }
            public void Should_return_false_for_less_than_x_items()
            {
                var subject   = new BuyXItemsGetYPercentOff("item-1", 2, 0.25m);
                var orderitem = new OrderItem {
                    Identifier = subject.ItemId, ItemCost = 20m, Quantity = 1
                };

                Assert.IsFalse(subject.MatchesItem(orderitem));
            }
            public void Should_return_false_for_non_matched_item()
            {
                var subject   = new BuyXItemsGetYPercentOff("item-1", 2, 0.25m);
                var orderitem = new OrderItem {
                    Identifier = "item-2", ItemCost = 20m, Quantity = 2
                };

                Assert.IsFalse(subject.MatchesItem(orderitem));
            }