Example #1
0
        public void LoadUserTest()
        {
            var userRepo = new UserRepo();
            var sessionRepo = new SessionRepo();
            var balanceRepo = new BalanceLogRepo();

            var user = new User();
            userRepo.Save(user);
            Assert.IsNotNull(user.Id, "Not saved.");
            var session = new Session { UserId = user.Id };
            sessionRepo.Save(session);

            var date = DateTime.UtcNow;

            balanceRepo.Save(new BalanceLog { UserId = user.Id, Amount = 3, Comment = "comment", Date = date });

            var manager = new UserManager();
            var loaded = manager.LoadBySessionKey(session.Id).WithBallanceLog();
            Assert.IsNotNull(loaded, "Not loaded");
            Assert.AreEqual(user.Id, loaded.Id, "Loaded incorrectly");
            Assert.IsNotNull(loaded.BallanceLog, "Balance log is null.");
            Assert.AreEqual(1, loaded.BallanceLog.Count(), "Balance log count incorrect.");
            var balance = loaded.BallanceLog.First();
            Assert.AreEqual(3, balance.Amount, "Amount incorrect.");
            Assert.AreEqual("comment", balance.Comment, "Comment incorrect.");
            Assert.AreEqual(date, balance.Date, "Date incorrect.");
        }
Example #2
0
 public static void UpdateBalance(this User user, double diff, string comment)
 {
     user.Balance += diff;
     var log = new BalanceLog { Amount = diff, UserId = user.Id, Date = DateTime.UtcNow, Comment = comment };
     var repo = new BalanceLogRepo();
     repo.Save(log);
 }
Example #3
0
 public static User WithBallanceLog(this User user)
 {
     if (user == null)
     {
         return null;
     }
     var repo = new BalanceLogRepo();
     user.BallanceLog = repo.GetAll().Where(b => b.UserId == user.Id);
     return user;
 }