public void UserUpdateLastLoginCommandHandler_Handle()
        {
            DateTime originalValue;
            DateTime newValue;

            using (var session = _store.OpenSession())
            {
                var user = FakeObjects.TestUserWithId();
                user.UpdateLastLoggedIn();
                originalValue = user.LastLoggedIn;

                session.Store(user);

                session.SaveChanges();

                // wait a second.
                Thread.Sleep(1000);

                var userUpdateLastLoginCommandHandler = new UserUpdateLastLoginCommandHandler(session);

                userUpdateLastLoginCommandHandler.Handle(new UserUpdateLastLoginCommand()
                {
                    Email = user.Email
                });

                session.SaveChanges();

                newValue = session.Load <User>(user.Id).LastLoggedIn;
            }

            Assert.AreNotEqual(originalValue, newValue);
            Assert.Greater(newValue, originalValue);
        }
        public void UserUpdateLastLoginCommandHandler_Handle()
        {
            DateTime originalValue;
            DateTime newValue;

            using (var session = _store.OpenSession())
            {
                var user = FakeObjects.TestUserWithId();
                user.UpdateLastLoggedIn();
                originalValue = user.LastLoggedIn;

                session.Store(user);

                session.SaveChanges();

                // wait a second.
                Thread.Sleep(1000);

                var userUpdateLastLoginCommandHandler = new UserUpdateLastLoginCommandHandler(session);

                userUpdateLastLoginCommandHandler.Handle(new UserUpdateLastLoginCommand()
                       {
                           Email = user.Email
                       });

                session.SaveChanges();

                newValue = session.Load<User>(user.Id).LastLoggedIn;
            }

            Assert.AreNotEqual(originalValue, newValue);
            Assert.Greater(newValue, originalValue);
        }