Exemple #1
0
        public void GenerateRandomString_validLength_returnsRandomString()
        {
            const int size         = 8;
            var       randomString = AccessTokenGenerator.Generate(size);

            Assert.IsNotNull(randomString);
            Assert.AreEqual(size, randomString.Length);
        }
        /// <summary>
        /// Generates access token if password matches. If not - returns null
        /// </summary>
        /// <param name="password">password</param>
        /// <returns>new access token</returns>
        public string GenerateAccessToken(string password)
        {
            if (!_passwordComparator.ArePasswordsSame(_hashedPassword, password))
            {
                return(null);
            }

            var accessToken = AccessTokenGenerator.Generate(AccessTokenLength);

            _accessTokens.Add(accessToken);
            return(accessToken);
        }
Exemple #3
0
        public void GenerateRandomStrings_validLength_returnsDifferentStrings()
        {
            const int size         = 8;
            var       accessTokens = new List <string>();

            for (var i = 0; i < 100; i++)
            {
                var newToken = AccessTokenGenerator.Generate(size);
                if (accessTokens.Contains(newToken))
                {
                    Assert.Fail($"token {newToken} already exists on the list! ({i} iteration)");
                }
                accessTokens.Add(newToken);
            }
        }