public void WhenSaveProjectWithUser_ShouldSaveUser() { var user = new User(); this.usersRepo.AddPhysically(user); var userId = user.Id; var project = new Project(); project.User = user; this.projectsRepo.AddPhysically(project); var projectId = project.Id; this.projectsRepo.ClearContext(); project = this.projectsRepo.GetById(projectId); user = this.usersRepo.GetById(userId); project.User.Should().Be.EqualTo(user); }
public void WhenSaveProjectWithUser_UserProjectsCollectionShouldContainsThisProject() { var user = new User(); this.usersRepo.AddPhysically(user); var userId = user.Id; var project = new Project(); project.User = user; this.projectsRepo.AddPhysically(project); var projectId = project.Id; this.projectsRepo.ClearContext(); project = this.projectsRepo.GetById(projectId); user = this.usersRepo.GetById(userId); user.Projects.Should().Contain(project); }
public MembershipCreateStatus CreateUser(string username, string password, string email) { Guard.StringArgumentIsNullOrBlank(username, "username"); Guard.StringArgumentIsNullOrBlank(password, "password"); Guard.StringArgumentIsNullOrBlank(email, "email"); var user = usersRepository.FirstBySpec(new UserByNameSpec(username)); if (user != null) return MembershipCreateStatus.DuplicateUserName; user = usersRepository.FirstBySpec(new UserByEmailSpec(email)); if (user != null) return MembershipCreateStatus.DuplicateEmail; var createdUser = new User { Username = username, PasswordHash = password.GetHash(), Email = email }; this.usersRepository.AddPhysically(createdUser); return MembershipCreateStatus.Success; }