示例#1
0
        public bool RegisterUser(RegisterModel registerModel)
        {
            string email = registerModel.Email;

            if (this.Repository.Single <UserProfile>(x => x.UserName == email) != null)
            {
                this.Success = false;
                this.Message = "Sorry, this username already exists. Please select another username.";
                return(false);
            }

            Company company = new Company();

            company.Name = registerModel.CompanyName;

            CompanyLocation companyLocation = new CompanyLocation();

            companyLocation.CompanyLocation1 = "Primary";

            company.CompanyLocations.Add(companyLocation);

            this.Repository.Add(company);
            this.Repository.CommitAndDispose();

            MembershipProvider.CreateAccount(registerModel.Email, registerModel.Password, new
            {
                FirstName           = registerModel.FirstName,
                LastName            = registerModel.LastName,
                created_on          = DateTime.Now,
                updated_on          = DateTime.Now,
                fk_company_location = companyLocation.id_company_locations
            }, true);

            return(true);
        }
示例#2
0
        public void Can_Add_Users_To_Role()
        {
            var user = new User {Username = "******", Password="******"};
            RoleProvider.CreateRole("admin");
            MembershipProvider.CreateAccount(user);

            RoleProvider.AddUsersToRoles(new [] { "sallen"}, new [] { "admin"});

            Assert.True(_db.UserIsInRole("sallen", "admin"));
        }
示例#3
0
        public void Account_Created_As_Local_Account()
        {
            var user = new User()
            {
                Username = "******", Password = "******"
            };

            MembershipProvider.CreateAccount(user);

            Assert.True(MembershipProvider.HasLocalAccount("sallen"));
        }
示例#4
0
        public void Fails_If_Duplicate_Username()
        {
            var user = new User()
            {
                Username = "******", Password = "******"
            };

            MembershipProvider.CreateAccount(user);

            Assert.Throws <FlexMembershipException>(() => MembershipProvider.CreateAccount(user));
        }
示例#5
0
        public void Can_Create_Account()
        {
            var user = new User()
            {
                Username = "******", Password = "******"
            };

            MembershipProvider.CreateAccount(user);

            Assert.True(_db.CanFindUsername("sallen"));
        }
示例#6
0
        public void Can_Throw_When_Users_In_Role()
        {
            var user = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            MembershipProvider.CreateAccount(user);
            RoleProvider.AddUsersToRoles(new[] { "sallen" }, new[] { "admin" });

            Assert.Throws <ProviderException>(() => RoleProvider.DeleteRole("admin", true));
        }
示例#7
0
        protected override void CreateData()
        {
            Repository.Add(ProjectData.GenerateSampleProject());
            _organizationRepository.Add(OrganizationData.GenerateSampleOrganizations());

            var membershipProvider = new MembershipProvider(_userRepository.Collection);

            foreach (User user in UserData.GenerateSampleUsers())
            {
                membershipProvider.CreateAccount(user);
            }
        }
示例#8
0
        public void Can_Create_Account()
        {
            var user = new User()
            {
                Username = "******", Password = "******"
            };

            MembershipProvider.CreateAccount(user);

            user = Verifier.Query <User>().SingleOrDefault(u => u.Username == "sallen");

            Assert.NotNull(user);
        }
示例#9
0
        public void Doesnt_Find_User_Not_In_Role()
        {
            var user = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            MembershipProvider.CreateAccount(user);

            RoleProvider.AddUsersToRoles(new[] { "sallen" }, new[] { "admin" });

            Assert.False(RoleProvider.IsUserInRole("sallen", "sales"));
        }
示例#10
0
        public void Can_Add_Users_To_Role()
        {
            var user = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            MembershipProvider.CreateAccount(user);

            RoleProvider.AddUsersToRoles(new[] { "sallen" }, new[] { "admin" });

            Assert.True(Verifier.Query <Role>().SingleOrDefault(r => r.Name == "admin").Users.Contains("sallen"));
        }
        protected override void CreateData()
        {
            var membershipProvider = new MembershipProvider(_userRepository.Collection);

            foreach (User user in UserData.GenerateSampleUsers())
            {
                membershipProvider.CreateAccount(user);
            }
            _projectRepository.Add(ProjectData.GenerateSampleProjects());
            _organizationRepository.Add(OrganizationData.GenerateSampleOrganizations());

            //_errorStackRepository.Add(ErrorStackData.GenerateErrorStack(id: TestConstants.ErrorStackId, organizationId: TestConstants.OrganizationId, projectId: TestConstants.ProjectId));
            //_errorStackRepository.Add(ErrorStackData.GenerateErrorStack(id: TestConstants.ErrorStackId2, organizationId: TestConstants.OrganizationId, projectId: TestConstants.ProjectIdWithNoRoles));
        }
示例#12
0
        public void Can_Delete_Role_With_Users()
        {
            var user = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            MembershipProvider.CreateAccount(user);
            RoleProvider.AddUsersToRoles(new[] { "sallen" }, new[] { "admin" });

            RoleProvider.DeleteRole("admin", false);

            Assert.False(_db.CanFindRole("admin"));
        }
示例#13
0
        public void Can_Delete_Role_With_Users()
        {
            var user = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            MembershipProvider.CreateAccount(user);
            RoleProvider.AddUsersToRoles(new[] { "sallen" }, new[] { "admin" });

            RoleProvider.DeleteRole("admin", false);

            Assert.False(Verifier.Query <Role>().Any(r => r.Name == "admin"));
        }
示例#14
0
        public void Can_Login_With_Good_Password()
        {
            var username = "******";
            var password = "******";
            var user     = new User {
                Username = username, Password = password
            };

            MembershipProvider.CreateAccount(user);

            bool result = MembershipProvider.Login(username, password);

            Assert.True(result);
        }
        public void Fails_If_Duplicate_Username()
        {
            var user1 = new User()
            {
                Username = "******", Password = "******"
            };
            var user2 = new User()
            {
                Username = "******", Password = "******"
            };

            MembershipProvider.CreateAccount(user1);

            Assert.Throws <MembershipCreateUserException>(() => MembershipProvider.CreateAccount(user2));
        }
示例#16
0
        public void Can_Get_Roles_For_User()
        {
            var user = new User {
                Username = "******", Password = "******"
            };

            MembershipProvider.CreateAccount(user);

            RoleProvider.CreateRole("admin");
            RoleProvider.CreateRole("sales");
            RoleProvider.CreateRole("engineering");

            RoleProvider.AddUsersToRoles(new[] { "sallen" }, new[] { "admin", "engineering" });

            Assert.True(RoleProvider.GetRolesForUser("sallen").Length == 2);
        }
示例#17
0
        public void Can_Change_Password()
        {
            var username = "******";
            var password = "******";
            var user     = new User {
                Username = username, Password = password
            };

            MembershipProvider.CreateAccount(user);

            var firstEncodedPassword = Verifier.Query <User>().Single(u => u.Username == "sallen").Password;

            MembershipProvider.ChangePassword(username, password, "foo");
            var secondEncodedPassword = Verifier.Query <User>().Single(u => u.Username == "sallen").Password;

            Assert.NotEqual(firstEncodedPassword, secondEncodedPassword);
        }
示例#18
0
        public void Can_Change_Password()
        {
            var username = "******";
            var password = "******";
            var user     = new User {
                Username = username, Password = password
            };

            MembershipProvider.CreateAccount(user);

            var firstEncodedPassword = _db.GetPassword(username);

            MembershipProvider.ChangePassword(username, password, "foo");
            var secondEncodedPassword = _db.GetPassword(username);

            Assert.NotEqual(firstEncodedPassword, secondEncodedPassword);
        }
        protected override void CreateData()
        {
            foreach (Organization organization in OrganizationData.GenerateSampleOrganizations())
            {
                if (organization.Id == TestConstants.OrganizationId3)
                {
                    _billingManager.ApplyBillingPlan(organization, BillingManager.FreePlan, UserData.GenerateSampleUser());
                }
                else
                {
                    _billingManager.ApplyBillingPlan(organization, BillingManager.SmallPlan, UserData.GenerateSampleUser());
                }

                Repository.Add(organization);
            }

            foreach (Project project in ProjectData.GenerateSampleProjects())
            {
                var organization = Repository.GetById(project.OrganizationId);
                organization.ProjectCount += 1;
                Repository.Update(organization);

                _projectRepository.Add(project);
            }

            var membershipProvider = new MembershipProvider(_userRepository.Collection);

            foreach (User user in UserData.GenerateSampleUsers())
            {
                if (user.Id == TestConstants.UserId)
                {
                    user.OrganizationIds.Add(TestConstants.OrganizationId2);
                    user.OrganizationIds.Add(TestConstants.OrganizationId3);
                }

                if (user.Id == TestConstants.UserIdWithNoRoles)
                {
                    user.OrganizationIds.Add(TestConstants.OrganizationId2);
                }

                membershipProvider.CreateAccount(user);
            }
        }
示例#20
0
        public void Can_Get_Users_In_Role()
        {
            var user1 = new User {
                Username = "******", Password = "******"
            };
            var user2 = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            RoleProvider.CreateRole("engineering");
            RoleProvider.CreateRole("sales");

            MembershipProvider.CreateAccount(user1);
            MembershipProvider.CreateAccount(user2);

            RoleProvider.AddUsersToRoles(new[] { "sallen", "missmm" }, new[] { "admin", "engineering" });


            Assert.Equal(2, RoleProvider.GetUsersInRole("admin").Length);
        }
示例#21
0
        public void Can_Remove_Users_From_Roles()
        {
            var user1 = new User {
                Username = "******", Password = "******"
            };
            var user2 = new User {
                Username = "******", Password = "******"
            };

            RoleProvider.CreateRole("admin");
            RoleProvider.CreateRole("engineering");
            RoleProvider.CreateRole("sales");

            MembershipProvider.CreateAccount(user1);
            MembershipProvider.CreateAccount(user2);

            RoleProvider.AddUsersToRoles(new[] { "sallen", "missmm" }, new[] { "admin", "engineering" });

            RoleProvider.RemoveUsersFromRoles(new[] { "sallen", "missmm" }, new[] { "sales", "admin" });

            Assert.True(RoleProvider.IsUserInRole("sallen", "engineering"));
            Assert.False(RoleProvider.IsUserInRole("sallen", "admin"));
        }