public void UpgradeSubscription_ChargesProRatadAmount() { var subscriberHelper = new SubscriberHelper(TestConstants.TestSiteName, TestConstants.TestApiKey); var subscriber = new Subscriber { CustomerId = TestConstants.TestCustomerId, ScreenName = TestConstants.TestCustomerId, Email = "*****@*****.**" }; var creditCard = new CreditCard { CardType = "visa", ExpirationMonth = 12, ExpirationYear = 2012, FirstName = "Tester", LastName = "Testing", Number = TestConstants.ValidCard, VerificationValue = "123" }; subscriberHelper.SubscribeToSubscriptionPlanWithCreditCard(subscriber, TestConstants.MediumSubscriptionPlanId, creditCard); var upgradeInvoice = subscriberHelper.ChangeSubscriberFeatureLevelWithOnFilePayment(subscriber, TestConstants.HighSubscriptionPlanId); Assert.AreEqual(15, upgradeInvoice.Amount.Value); }
public void CreateSubscription_WithHelper_ReturnsInvoice() { var subscriberHelper = new SubscriberHelper(TestConstants.TestSiteName, TestConstants.TestApiKey); var subscriber = new Subscriber { CustomerId = TestConstants.TestCustomerId, ScreenName = TestConstants.TestCustomerId, Email = "*****@*****.**" }; var creditCard = new CreditCard { CardType = "visa", ExpirationMonth = 12, ExpirationYear = 2012, FirstName = "Tester", LastName = "Testing", Number = TestConstants.ValidCard, VerificationValue = "123" }; var invoice = subscriberHelper.SubscribeToSubscriptionPlanWithCreditCard(subscriber, TestConstants.MediumSubscriptionPlanId, creditCard); Assert.NotNull(invoice); }
public void DowngradeSubscription_GivesStoreCreditToSubscriber() { var subscriberHelper = new SubscriberHelper(TestConstants.TestSiteName, TestConstants.TestApiKey); var subscriber = new Subscriber { CustomerId = TestConstants.TestCustomerId, ScreenName = TestConstants.TestCustomerId, Email = "*****@*****.**" }; var creditCard = new CreditCard { CardType = "visa", ExpirationMonth = 12, ExpirationYear = 2012, FirstName = "Tester", LastName = "Testing", Number = TestConstants.ValidCard, VerificationValue = "123" }; subscriberHelper.SubscribeToSubscriptionPlanWithCreditCard(subscriber, TestConstants.HighSubscriptionPlanId, creditCard); subscriberHelper.ChangeSubscriberFeatureLevelWithOnFilePayment(subscriber, TestConstants.LowSubscriptionPlanId); var downgradedSubscriber = subscriberHelper.FetchSubscriber(subscriber.CustomerId); Assert.GreaterOrEqual(downgradedSubscriber.StoreCredit.Value, 0); }
public void CreateSubscription_WithHelper_ForFreeSubscriptionPlan_ThrowsForbiddenActionException() { var subscriberHelper = new SubscriberHelper(TestConstants.TestSiteName, TestConstants.TestApiKey); var subscriber = new Subscriber { CustomerId = TestConstants.TestCustomerId, ScreenName = TestConstants.TestCustomerId, Email = "*****@*****.**" }; var creditCard = new CreditCard { CardType = "visa", ExpirationMonth = 12, ExpirationYear = 2012, FirstName = "Tester", LastName = "Testing", Number = TestConstants.ValidCard, VerificationValue = "123" }; var invoice = subscriberHelper.SubscribeToSubscriptionPlanWithCreditCard(subscriber, TestConstants.FreePlanSubscriptionPlanId, creditCard); }
public void CreateSubscription_WithHelper_WhenGatewayTimesout_ThrowsPaymentGatewayTimeoutException() { var subscriberHelper = new SubscriberHelper(TestConstants.TestSiteName, TestConstants.TestApiKey); var subscriber = new Subscriber { CustomerId = TestConstants.TestCustomerId, ScreenName = TestConstants.TestCustomerId, Email = "*****@*****.**" }; var creditCard = new CreditCard { CardType = "visa", ExpirationMonth = 12, ExpirationYear = 2012, FirstName = "Tester", LastName = "Testing", Number = TestConstants.GatewayUnavailableCard, VerificationValue = "123" }; var invoice = subscriberHelper.SubscribeToSubscriptionPlanWithCreditCard(subscriber, TestConstants.MediumSubscriptionPlanId, creditCard); }