public void RegisterUser_Success() { UserRepository repository = new UserRepository(); User user = new User { USERNAME = string.Format("UT_{0}",DateTime.Now.Ticks), PASSWORD = "******", NAME = "Unit Test User", ID_DEPENDENCY= "iIAW2gamws" }; RepositoryResponse<User> expected = new RepositoryResponse<User> { Success = true, Data = user }; RepositoryResponse<User> result = repository.RegisterUser(user).GetAwaiter().GetResult(); Assert.IsTrue(result.Success, "User not registered"); Assert.IsNotNull(result.Data); Assert.IsNull(result.Error, "Some error ocurred"); }
public static User ToUser(this ParseUser parseUser) { var relation = (ParseRelation<ParseObject>)parseUser["ID_Dependency"]; var dep = relation.Query.FirstAsync().GetAwaiter().GetResult(); var user = new User { ID = parseUser.ObjectId, ID_DEPENDENCY = dep.ObjectId, NAME = parseUser.ContainsKey("Name") ? parseUser["Name"].ToString() : parseUser.Username, USERNAME = parseUser.Username }; return user; }
public RepositoryResponse<User> ValidateUser(User user) { var response = new RepositoryResponse<User> { }; try { var objectUser= ParseUser.LogInAsync(user.USERNAME, user.PASSWORD).GetAwaiter().GetResult(); response.Success = true; response.Data = objectUser.ToUser(); // Login was successful. } catch (Exception ex) { response.Success = false; response.Error = ex; } return response; }
public void ValidateUser_Success() { UserRepository repository = new UserRepository(); User user = new User { USERNAME= "******", PASSWORD = "******" }; RepositoryResponse<User> expected = new RepositoryResponse<User> { Success = true, Data = user }; RepositoryResponse<User> result = repository.ValidateUser(user); Assert.IsTrue(result.Success, "User not valid"); Assert.IsNotNull(result.Data); Assert.IsNull(result.Error, "Some error ocurred"); }
public async Task<RepositoryResponse<User>> RegisterUser(User user) { var response = new RepositoryResponse<User> { }; try { var userObject = new ParseUser() { Username = user.USERNAME, Password = user.PASSWORD }; userObject["Name"] = user.NAME; DependencyRepository DependencyContext = new DependencyRepository(); RepositoryResponse<ParseObject> Dependency = await DependencyContext.GetDependencyById(user.ID_DEPENDENCY); ParseQuery<ParseObject> query = new ParseQuery<ParseObject>("Dependency"); IEnumerable<ParseObject> result = await query.FindAsync(); var relation = userObject.GetRelation<ParseObject>("ID_Dependency"); relation.Add(Dependency.Data); await userObject.SignUpAsync(); response.Success = true; response.Data = userObject.ToUser(); // Register was successful. } catch (Exception ex) { response.Success = false; response.Error = ex; } return response; }
public async Task<ActionResult> Register(User model) { DependencyRepository dependencyRepository = new DependencyRepository(); if (ModelState.IsValid) { // Attempt to register the user try { var response = await userRepository.RegisterUser(model); if (response.Success) { var user = response.Data; FormsAuthentication.SetAuthCookie(user.USERNAME, false); var getDependency = await dependencyRepository.Get(user.ID_DEPENDENCY); if (getDependency.Success) { Session["Dependency"] = getDependency.Data.NAME; Session["User"] = user; return RedirectToAction("Index", "Home"); } } else { ModelState.AddModelError("", response.Error); } } catch (MembershipCreateUserException e) { ModelState.AddModelError("", ErrorCodeToString(e.StatusCode)); } } // If we got this far, something failed, redisplay form dependencyRepository = new DependencyRepository(); var x = await dependencyRepository.GetDependencies(); ViewBag.DependencyList = new SelectList(x.Data, "ID", "NAME"); return View(model); }