public Task TestUpgradeToRevocableSession() { IObjectState state = new MutableObjectState { ServerData = new Dictionary <string, object>() { { "sessionToken", "llaKcolnu" } } }; var mockController = new Mock <IAVSessionController>(); mockController.Setup(obj => obj.UpgradeToRevocableSessionAsync(It.IsAny <string>(), It.IsAny <CancellationToken>())).Returns(Task.FromResult(state)); var mockCurrentUserController = new Mock <IAVCurrentUserController>(); AVPlugins.Instance = new AVPlugins { SessionController = mockController.Object, CurrentUserController = mockCurrentUserController.Object, }; AVObject.RegisterSubclass <AVUser>(); AVObject.RegisterSubclass <AVSession>(); CancellationTokenSource source = new CancellationTokenSource(); return(AVSessionExtensions.UpgradeToRevocableSessionAsync("someSession", source.Token).ContinueWith(t => { Assert.False(t.IsFaulted); Assert.False(t.IsCanceled); mockController.Verify(obj => obj.UpgradeToRevocableSessionAsync(It.Is <string>(sessionToken => sessionToken == "someSession"), source.Token), Times.Exactly(1)); Assert.AreEqual("llaKcolnu", t.Result); })); }
public Task TestRevoke() { var mockController = new Mock <IAVSessionController>(); mockController .Setup(sessionController => sessionController.IsRevocableSessionToken(It.IsAny <string>())) .Returns(true); AVPlugins.Instance = new AVPlugins { SessionController = mockController.Object }; CancellationTokenSource source = new CancellationTokenSource(); return(AVSessionExtensions.RevokeAsync("r:someSession", source.Token).ContinueWith(t => { Assert.False(t.IsFaulted); Assert.False(t.IsCanceled); mockController.Verify(obj => obj.RevokeAsync(It.Is <string>(sessionToken => sessionToken == "r:someSession"), source.Token), Times.Exactly(1)); })); }