public static void Test_Returns_False_After_Sucessful_Authentication_And_Then_Removal() { //arrange Mock <ISigningService> signingService = new Mock <ISigningService>(); signingService.Setup(x => x.isSigned(It.IsAny <byte[]>(), It.IsAny <byte[]>())) .Returns(true); ElevationManager elevationManager = new ElevationManager(Mock.Of <ILog>(), signingService.Object); IElevatableSession session = Mock.Of <IElevatableSession>(); AuthenticationMessage message = new AuthenticationMessage(new byte[0]); session.UniqueAuthToken = elevationManager.RequestSingleUseToken(session); //act:Preform a authentication elevationManager.TryAuthenticate(session, message); //now revoke it elevationManager.TryRevokeAuthentication(session); //assrt Assert.False(elevationManager.isElevated(session)); }