示例#1
0
文件: Cache.cs 项目: supermuk/iudico
        public void InvalidateUser()
        {
            // original caching
            //this.tests.Storage.GetUsers();
            tests = UserManagementTests.Update();

            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            this.tests.Storage.CreateUser(temp);

            var user = this.tests.Storage.GetUsers().SingleOrDefault(u => u.Username == temp.Username);
            Assert.IsNotNull(user);
            
            temp = this.tests.Storage.GetUser("name");

            var expected = new User
            {
                Username = "******",
                Email = "*****@*****.**",
                Password = "******",
                Id = temp.Id,
                OpenId = "openid"
            };

            this.tests.Storage.EditUser(temp.Id, new EditUserModel(expected));
            user = this.tests.Storage.GetUsers().SingleOrDefault(u => u.Username == temp.Username);

            Assert.IsTrue(this.tests.TestUsers(this.tests.Storage.GetUser("name"), expected));
            Assert.IsTrue(this.tests.TestUsers(user, expected));

            this.tests.Storage.DeleteUser(u => u.Id == temp.Id);

            Assert.IsNull(this.tests.Storage.GetUser("name"));
        }
示例#2
0
        public void CreateUserInvalid()
        {
            User temp = new User {Username = "******", Email = "*****@*****.**"};

            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);
        }
示例#3
0
        public void CalculateSpecializedResultTest()
        {
            User usr = new User() { Username = "******" };
            Topic thm = new Topic() { Name = "Topic One" };
            AttemptResult AR = new AttemptResult(1, usr, thm, CompletionStatus.Completed, AttemptStatus.Completed, SuccessStatus.Passed, DateTime.Now, 0.5f);

            TopicResult topicRes = new TopicResult(usr, thm);
            List<AttemptResult> ARL = new List<AttemptResult>();
            ARL.Add(AR);
            topicRes.AttemptResults = ARL;
            topicRes.GetTopicResultScore();

            DisciplineResult currRes = new DisciplineResult();
            currRes.TopicResult.Add(topicRes);
            Discipline curr = null;
            currRes.CalculateSumAndMax(usr, curr);

            SpecializedResult target = new SpecializedResult();
            target.DisciplineResult.Add(currRes);
            target.CalculateSpecializedResult(usr);

            double? ExpectedSum = 50.0;
            double? ExpectedMax = 100.0;
            double? ExpectedPercent = 50.0;
            char ExpextedECTS = 'F';

            Assert.AreEqual(ExpectedSum, target.Sum);
            Assert.AreEqual(ExpectedMax, target.Max);
            Assert.AreEqual(ExpectedPercent, target.Percent);
            Assert.AreEqual(ExpextedECTS, target.ECTS);
        }
示例#4
0
        public void ChangePasswordWithBlankDataTest()
        {
            this.tests = UserManagementTests.Update();
            var model = new ChangePasswordModel { OldPassword = string.Empty, ConfirmPassword = "******", NewPassword = "******" };
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.ChangeCurrentUser("panza");
            this.tests.Storage.CreateUser(temp);
            this.tests.ChangeCurrentUser("name");

            try
            {
                this.tests.Storage.ChangePassword(model);
            }
            catch (Exception e)
            {
                this.tests.Storage.DeleteUser(u => u.Username == "name");

                if (e.Message == "Old password can't be empty.")
                {
                    Assert.Pass();
                }

                Assert.Fail();
            }

            this.tests.Storage.DeleteUser(u => u.Username == "name");
            Assert.Fail();
        }
示例#5
0
        public void EditUserValid()
        {
            tests = new UserManagementTests();

            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.CreateUser(temp);

            temp = this.tests.Storage.GetUser("name");

            var expected = new User
                {
                    Username = "******", 
                    Email = "*****@*****.**", 
                    Password = "******", 
                    Id = temp.Id, 
                    OpenId = "openid"
                };

            var model = new EditUserModel(expected);

            this.tests.Storage.EditUser(temp.Id, model);

            var compare = this.tests.Storage.GetUser("name");

            Assert.IsTrue(this.tests.TestUsers(compare, expected) && compare.OpenId == expected.OpenId);

            this.tests.Storage.DeleteUser(u => u.Username == "name");
        }
示例#6
0
        public void UpdateUserAverage()
        {
            tests = UserManagementTests.Update();
            var user = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            this.tests.Storage.CreateUser(user);
            
            var attemptResult = new AttemptResult
                {
                    AttemptId = 1,
                    AttemptStatus = AttemptStatus.Completed,
                    CompletionStatus = CompletionStatus.Completed,
                    FinishTime = DateTime.Now,
                    StartTime = DateTime.Now,
                    Score = new Score(0, 50, 45, 0.9F),
                    SuccessStatus = SuccessStatus.Passed,
                    TopicType = TopicTypeEnum.Test,
                    User = this.tests.Storage.GetUser(user.Username)
                };

            this.tests.Storage.UpdateUserAverage(attemptResult);

            var testUser = this.tests.Storage.GetUser(user.Username);

            Assert.IsTrue(testUser.TestsTotal == 1);
            Assert.IsTrue(testUser.TestsSum == 90);

            this.tests.Storage.DeleteUser(u => u.Username == "name1");
        }
示例#7
0
        public void CreateUserInvalid()
        {
            tests = new UserManagementTests();
            var temp = new User { Username = "******", Email = "*****@*****.**" };

            this.tests.Storage.CreateUser(temp);
        }
示例#8
0
        public void EditUserValid()
        {
            User temp = new User {Username = "******", Email = "*****@*****.**", Password = "******"};

            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);

            temp = _Tests.Storage.GetUser(u => u.Username == "name");

            User expected = new User
                                {
                                    Username = "******",
                                    Email = "*****@*****.**",
                                    Password = "******",
                                    Id = temp.Id,
                                    OpenId = "openid"
                                };

            var model = new EditUserModel(expected);
            _Tests.Storage.EditUser(temp.Id, model);

            var compare = _Tests.Storage.GetUser(u => u.Username == "name");
            Assert.IsTrue(_Tests.TestUsers(compare, expected) && compare.OpenId == expected.OpenId);

            _Tests.Storage.DeleteUser(u => u.Username == "name");
        }
示例#9
0
 public void AddUserStats(User user,
         int totalNumberOfRequests,
         int todayNumberOfRequests,
         DateTime lastActivityTime)
 {
     _stats.Add(new UserActivityStats(
         user, totalNumberOfRequests, todayNumberOfRequests, lastActivityTime));
 }
示例#10
0
        public void GetUser()
        {
            User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            
            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);

            Assert.IsTrue(_Tests.TestUsers(temp, _Tests.Storage.GetUser(u => u.Username == "iper")));
        }
示例#11
0
 public void ChangePasswordSuccess()
 {
     var model = new ChangePasswordModel {OldPassword = "******", ConfirmPassword = "******", NewPassword = "******"};
     User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
     _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
     _Tests.Storage.CreateUser(temp);
     _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "ipepp"));
     _Tests.Storage.ChangePassword(model);
     Assert.AreEqual(_Tests.Storage.GetUser(u => u.Username == "ipepp").Password, _Tests.Storage.EncryptPassword("321"));
 }
示例#12
0
        public void DeleteUserExisting()
        {
            tests = new UserManagementTests();
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            
            this.tests.Storage.CreateUser(temp);
            this.tests.Storage.DeleteUser(u => u.Username == "Username");

            Assert.IsTrue(this.tests.Storage.GetUser(u => u.Username == "Username") == null);
        }
示例#13
0
 public UserActivityStats(
     User user,
     int totalNumberOfRequests,
     int todayNumberOfRequests,
     DateTime lastActivityTime)
 {
     this.User = user;
     this.TotalNumberOfRequests = totalNumberOfRequests;
     this.TodayNumberOfRequests = todayNumberOfRequests;
     this.LastActivityTime = lastActivityTime;
 }
示例#14
0
        public void EditUserNonExisting()
        {
            User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));

            User expected = new User { Username = "******", Email = "*****@*****.**", Password = "******", Id = temp.Id, OpenId = "openid" };

            var model = new EditUserModel(expected);
            _Tests.Storage.EditUser(temp.Id, model);
        }
示例#15
0
        public void AddNonExistingUserToNonExistingGroup()
        {
            tests = UserManagementTests.Update();
            var group = new Group { Id = 12366, Name = "pmp51" };
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.AddUserToGroup(group, temp);

            Assert.IsFalse(this.tests.Storage.GetUsersInGroup(group).Contains(temp));
            Assert.AreEqual(0, this.tests.Storage.GetGroupsByUser(temp).Count());
        }
示例#16
0
        public void CreateUserValid()
        {
            tests = new UserManagementTests();
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.CreateUser(temp);

            var expected = this.tests.Storage.GetUser(u => u.Username == "name");

            Assert.IsTrue(temp.Username == expected.Username && temp.Email == expected.Email);
        }
示例#17
0
 public void ChangePasswordIncorrect()
 {
     var model = new ChangePasswordModel { OldPassword = "******", ConfirmPassword = "******", NewPassword = "******" };
     User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
     _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
     _Tests.Storage.CreateUser(temp);
     _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "name"));
     _Tests.Storage.ChangePassword(model);
     Assert.AreEqual(_Tests.Storage.GetUser(u => u.Username == "name").Password, _Tests.Storage.EncryptPassword("321"));
     _Tests.Storage.DeleteUser(u => u.Username == "name");
 }
示例#18
0
        public void RemoveNonExistingUserFromNonExistingGroup()
        {
            var group = new Group { Id = 345678, Name = "pmi31" };
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.AddUserToGroup(group, temp);
            this.tests.Storage.RemoveUserFromGroup(group, temp);

            Assert.AreEqual(null, this.tests.Storage.GetUser(u => u.Username == temp.Username));
            Assert.AreEqual(0, this.tests.Storage.GetGroupsByUser(temp).Count());
        }
示例#19
0
        public void DeleteUserExisting()
        {
            User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            
            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            
            _Tests.Storage.CreateUser(temp);
            _Tests.Storage.DeleteUser(u => u.Username == "name");

            Assert.IsTrue(_Tests.Storage.GetUser(u => u.Username == "name") == null);
        }
示例#20
0
        public void CreateUser()
        {
            User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            
            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);

            User expected = _Tests.Storage.GetUser(u => u.Username == "ipep");
            
            Assert.IsTrue(temp.Username == expected.Username && temp.Email == expected.Email);
        }
示例#21
0
        public void GetCurrentUser()
        {
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.CreateUser(temp);

            this.tests.Storage.ActivateUser(this.tests.Storage.GetUser("name").Id);

            tests.ChangeCurrentUser("name");

            Assert.IsTrue(tests.Storage.GetCurrentUser().Username== "name");
        }
示例#22
0
        public void GetStatsTest()
        {
            var overallViewModel = new OverallViewModel("1");

            var tempUser = new User { UserId = "user1", Name = "User1", IsApproved = true };

            overallViewModel.AddUserStats(tempUser, 120, 70, DateTime.Today);

            Assert.True(overallViewModel.GetStats().Count(s => s.User.UserId == "user1")==1);

            Assert.True(overallViewModel.GetStats().Count(s => s.User.UserId == "user15") == 0);
        }
示例#23
0
        public void ActivateUserSuccess()
        {
            User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);

            System.Guid gg = _Tests.Storage.GetUser(u => u.Username == "ippe").Id;

            _Tests.Storage.ActivateUser(gg);

            Assert.AreEqual(_Tests.Storage.GetUser(u => u.Username == "ippe").IsApproved, true);
        }
示例#24
0
        public void CreateUserValid()
        {
            User temp = new User {Username = "******", Email = "*****@*****.**", Password = "******"};

            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);

            User expected = _Tests.Storage.GetUser(u => u.Username == "name");

            Assert.IsTrue(temp.Username == expected.Username && temp.Email == expected.Email);

            _Tests.Storage.DeleteUser(u => u.Username == "name");
        }
示例#25
0
        public void AddNonExistingUserToNonExistingGroup()
        {
            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));

            var group = new Group { Id = 12366, Name = "pmp51" };

            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            _Tests.Storage.AddUserToGroup(group, temp);

            Assert.AreEqual(null, _Tests.Storage.GetUser(u => u.Username == temp.Username));
            Assert.AreEqual(0,_Tests.Storage.GetGroupsByUser(temp).Count());
        }
示例#26
0
        public void GetUserExisting()
        {
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.CreateUser(temp);

            var user = this.tests.Storage.GetUser(u => u.Username == "name1");
            Assert.AreEqual(temp.Username, user.Username);
            Assert.AreEqual(temp.Email, user.Email);
            Assert.AreEqual(temp.Password, user.Password);

            this.tests.Storage.DeleteUser(u => u.Username == "name1");
        }
示例#27
0
        public void RemoveExistingUserFromNonExistingGroup()
        {
            var group = new Group { Id = 12677, Name = "pmi31" };
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.CreateUser(temp);
            temp = this.tests.Storage.GetUser(u => u.Username == temp.Username);

            this.tests.Storage.RemoveUserFromGroup(group, temp);
            Assert.IsFalse(this.tests.Storage.GetGroupsByUser(temp).Contains(group));

            this.tests.Storage.DeleteUser(u => u.Username == "name");
        }
示例#28
0
        public void DeactivateUserExisting()
        {
            tests = new UserManagementTests();
            var temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };

            this.tests.Storage.CreateUser(temp);

            var gg = this.tests.Storage.GetUser(u => u.Username == "name").Id;

            this.tests.Storage.ActivateUser(gg);
            this.tests.Storage.DeactivateUser(gg);

            Assert.AreEqual(this.tests.Storage.GetUser(u => u.Username == "name").IsApproved, false);
        }
示例#29
0
        public void ActivateUserExisting()
        {
            User temp = new User { Username = "******", Email = "*****@*****.**", Password = "******" };
            _Tests.MockStorage.Setup(s => s.GetCurrentUser()).Returns(_Tests.Storage.GetUser(u => u.Username == "panza"));
            _Tests.Storage.CreateUser(temp);

            System.Guid gg = _Tests.Storage.GetUser(u => u.Username == "name").Id;

            _Tests.Storage.ActivateUser(gg);

            Assert.AreEqual(_Tests.Storage.GetUser(u => u.Username == "name").IsApproved, true);

            _Tests.Storage.DeleteUser(u => u.Username == "name");
        }
示例#30
0
        public void AddUserStatsTest()
        {
            var overallViewModel = new OverallViewModel("1");

            var tempUser = new User {UserId = "User1", Name = "User1", IsApproved = true};

            Assert.AreEqual(overallViewModel.GetOverallNumberOfRequests(), 0);

            overallViewModel.AddUserStats(tempUser, 120, 70, DateTime.Today);

            Assert.True(overallViewModel.GetStats().Count(s => s.User.UserId == "User1") == 1);

            Assert.AreEqual(overallViewModel.GetOverallNumberOfRequests(),120);
        }