public void EnsureGenerateTokens_regenerate_tokens_every_call()
        {
            var appSessionTokenCounter = 0;

            _sessionAuthApiMock.Setup(obj => obj.Authenticate()).Returns(() =>
            {
                ++appSessionTokenCounter;
                return("as" + appSessionTokenCounter.ToString());
            });
            var userSessionTokenCounter = 0;

            _sessionAuthApiMock.Setup(obj => obj.UserAuthenticate(It.IsAny <long>(), It.IsAny <string>())).Returns(() =>
            {
                ++userSessionTokenCounter;
                return("us" + userSessionTokenCounter.ToString());
            });
            var appSessionManager = new AppSessionManager(_sessionAuthApiMock.Object, _certificate);

            Assert.Equal("us1", appSessionManager.SessionToken);
            Assert.Null(appSessionManager.KeyManagerToken);

            appSessionManager.GenerateTokens();
            Assert.Equal("us2", appSessionManager.SessionToken);
            Assert.Null(appSessionManager.KeyManagerToken);
        }
예제 #2
0
        public void EnsureGenerateTokens_regenerate_tokens_every_call()
        {
            var appSessionTokenCounter = 0;

            _sessionAuthApiMock.Setup(obj => obj.V1AppAuthenticatePost()).Returns(() =>
            {
                ++appSessionTokenCounter;
                return(new Token("appSessionToken", "as" + appSessionTokenCounter));
            });
            var userSessionTokenCounter = 0;

            _sessionAuthApiMock.Setup(obj => obj.V1AppUserUidAuthenticatePost(It.IsAny <int>(), It.IsAny <string>())).Returns(() =>
            {
                ++userSessionTokenCounter;
                return(new OboAuthResponse("us" + userSessionTokenCounter));
            });
            var appSessionManager = new AppSessionManager(_sessionAuthApiMock.Object, _certificate);

            Assert.Equal("us1", appSessionManager.SessionToken);
            Assert.Null(appSessionManager.KeyManagerToken);

            appSessionManager.GenerateTokens();
            Assert.Equal("us2", appSessionManager.SessionToken);
            Assert.Null(appSessionManager.KeyManagerToken);
        }
        public void EnsureTokens_are_returned_without_explicitly_calling_GenerateTokens()
        {
            _sessionAuthApiMock.Setup(obj => obj.Authenticate()).Returns("as1");
            _sessionAuthApiMock.Setup(obj => obj.UserAuthenticate(0, "as1")).Returns("us1");
            var appSessionManager = new AppSessionManager(_sessionAuthApiMock.Object, _certificate);
            var sessionToken      = appSessionManager.SessionToken;
            var keyManagerToken   = appSessionManager.KeyManagerToken;

            Assert.Equal("us1", sessionToken);
            Assert.Null(keyManagerToken);
        }
예제 #4
0
        public void EnsureTokens_are_returned_without_explicitly_calling_GenerateTokens()
        {
            _sessionAuthApiMock.Setup(obj => obj.V1AppAuthenticatePost()).Returns(new Token("appSessionToken", "as1"));
            _sessionAuthApiMock.Setup(obj => obj.V1AppUserUidAuthenticatePost(0, "as1")).Returns(new OboAuthResponse("us1"));
            var appSessionManager = new AppSessionManager(_sessionAuthApiMock.Object, _certificate);
            var sessionToken      = appSessionManager.SessionToken;
            var keyManagerToken   = appSessionManager.KeyManagerToken;

            Assert.Equal("us1", sessionToken);
            Assert.Null(keyManagerToken);
        }
예제 #5
0
 public SessionUnitTest()
 {
     appSessionManager = new AppSessionManager();
     aPPCacheManager   = new APPCacheManager();
 }