public void ShouldCallGatewayAsManyTimesAsThereAreOfferNumbersWhenCalculatingTotalPurchased()
        {
            var mockGateway = new StoreGatewayMoqaLate();
            mockGateway.IsPurchasedSetReturnValue(true);

            var sut = new RepeatPurchaseWith123Instances()
                          {
                              StoreGateway = mockGateway
                          };

            sut.GetTotalPurchased();

            Assert.Equal(123, mockGateway.IsPurchasedTimesCalled());
        }
        public void ShouldCallNameFormatterAsManyTimesAsThereAreOfferNumbersWhenCalculatingTotalPurchased()
        {
            var mockGateway = new StoreGatewayMoqaLate();
             mockGateway.IsPurchasedSetReturnValue(true);

             var mockConcat = new  RepeatPurchaseToggleNameInstanceFormatterMoqaLate();

             var sut = new RepeatPurchaseWith123Instances()
             {
                 StoreGateway = mockGateway,
                 NameInstanceFormatter = mockConcat
             };

             sut.GetTotalPurchased();

             Assert.Equal(123, mockConcat.FormatTimesCalled());
        }