public async Task RegisterResetPasswordCode_Ok()
        {
            IStorage storage = new InMemoryStaticStorage();

            User u = new User()
            {
                Email = "*****@*****.**", Password = "******"
            };
            AccountService svc = new AccountService(storage);

            string code = await svc.RegisterResetPasswordCodeAsync(u);

            string res = await storage.GetEmailByResetPasswordCodeAsync(code);

            Assert.AreEqual(u.Email, res);
        }
        public async Task GetUserByResetPasswordToken_Ok()
        {
            IStorage storage = new InMemoryStaticStorage();
            await storage.Prepare();

            User u = new User()
            {
                Email = "*****@*****.**", Password = "******"
            };
            AccountService svc = new AccountService(storage);

            string code = await svc.RegisterResetPasswordCodeAsync(u);

            User res = await svc.GetUserByResetPasswordTokenAsync(code);

            //now should return null as code already used
            var code2 = await storage.GetEmailByResetPasswordCodeAsync(code);

            Assert.AreEqual(u.Email, res.Email);
            Assert.IsNull(code2);
        }