public async Task CanActivateSubscription() { var loggerMock = new Mock <ILogger <FulfillmentManager> >(); var fulfillmentManager = new FulfillmentManager( this.fulfillmentClientMock.Object, loggerMock.Object); var subscriptionId = Guid.NewGuid(); var subscriptionDetails = new MarketplaceSubscription { PlanId = "id", SubscriptionId = subscriptionId }; this.fulfillmentClientMock.Setup(c => c.ActivateSubscriptionAsync(It.IsAny <Guid>(), It.IsAny <ActivatedSubscription>(), It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <CancellationToken>())) .Returns(Task.FromResult(new FulfillmentRequestResult { Success = true })); var result = await fulfillmentManager.ActivateSubscriptionAsync(subscriptionId, subscriptionDetails.PlanId, null); this.fulfillmentClientMock .Verify(c => c.ActivateSubscriptionAsync( It.Is <Guid>(s => s == subscriptionId), It.Is <ActivatedSubscription>(a => a.PlanId == "id"), It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <CancellationToken>()), Times.Once()); Assert.True(result.State == SubscriptionState.Complete); }
public async Task CanResolveSubscription() { var loggerMock = new Mock <ILogger <FulfillmentManager> >(); var fulfillmentManager = new FulfillmentManager( this.fulfillmentClientMock.Object, loggerMock.Object); this.fulfillmentClientMock.Setup(f => f.ResolveSubscriptionAsync(It.IsAny <string>(), It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <CancellationToken>())).Returns(Task.FromResult(new ResolvedSubscription())); var subscriptionId = await fulfillmentManager.ResolveSubscriptionAsync("authCode"); this.fulfillmentClientMock .Verify(c => c.ResolveSubscriptionAsync( It.Is <string>(a => a == "authCode"), It.IsAny <Guid>(), It.IsAny <Guid>(), It.IsAny <CancellationToken>()), Times.Once()); }