コード例 #1
0
        public void StartPasswordReset()
        {
            string id                         = "1234";
            string validationCode             = "abcdefghi";
            ServerConfiguration configuration = new ServerConfiguration()
            {
                JwtSecretKey = "secret",
                PasswordResetDurationMinutes = 30
            };

            User tmpUser = Users.CreateNewUser("*****@*****.**")
                           .SetPassword("password123");

            tmpUser.id = id;

            string jwt = Tokens.TokenForUser(tmpUser, DateTime.Now.AddHours(-1), "secret");

            DataProviderMock.When(x => x.GetUserByEmail("*****@*****.**")).Return(Task.FromResult <User>(tmpUser));
            DataProviderMock.When(x => x.SaveUser(It.IsAny <User>())).Return(Task.FromResult(BlueDogResult.Ok));

            UserServices             userServices = new UserServices(DataProviderMock);
            StartResetPasswordResult res          = null;

            Task.Run(async() =>
            {
                res = await userServices.StartResetPassword("*****@*****.**", configuration);
            }).Wait();

            Assert.AreEqual(res.Result, BlueDogResult.Ok);
            Assert.IsNotNull(tmpUser.resetPasswordCode);
            Assert.IsNotNull(tmpUser.resetPasswordExpires);
            Assert.IsNotNull(res.ResetPasswordKey);
        }
コード例 #2
0
        public void StartPasswordResetBadPassword()
        {
            string id                         = "1234";
            string validationCode             = "abcdefghi";
            ServerConfiguration configuration = new ServerConfiguration()
            {
                JwtSecretKey = "secret",
                PasswordResetDurationMinutes = 30
            };


            DataProviderMock.When(x => x.GetUserByEmail("*****@*****.**")).Return(Task.FromResult <User>(null));

            UserServices             userServices = new UserServices(DataProviderMock);
            StartResetPasswordResult res          = null;

            Task.Run(async() =>
            {
                res = await userServices.StartResetPassword("*****@*****.**", configuration);
            }).Wait();

            Assert.AreEqual(res.Result, BlueDogResult.NoSuchUser);
        }