Exemple #1
0
        public IActionResult AddUser(CreatedUser user)
        {
            User newUser = user.ToUser();

            newUser.Id = _users.AddUser(user);
            return(Created(HttpContext.Request.Scheme + "//" + HttpContext.Request.Host + HttpContext.Request.Path + "/" + newUser.Id, newUser));
        }
        public async Task <ActionResult <User> > PostUser(NewUserViewModel vm)
        {
            var db          = new DatabaseContext();
            var energyLevel = db.EnergyLevels.FirstOrDefault(energyLevel => energyLevel.Id == vm.EnergyLevelId);
            var gender      = db.Genders.FirstOrDefault(gender => gender.Id == vm.GenderId);
            var interest    = db.InterestedEnergyLevels.FirstOrDefault(interest => interest.Id == vm.InterestedEnergyLevelId);

            if (energyLevel == null)
            {
                return(NotFound());
            }
            else if (gender == null)
            {
                return(NotFound());
            }
            else if (interest == null)
            {
                return(NotFound());
            }
            else
            {
                var user = new User
                {
                    Name                    = vm.Name,
                    Breed                   = vm.Breed,
                    About                   = vm.About,
                    Size                    = vm.Size,
                    EnergyLevelId           = vm.EnergyLevelId,
                    GenderId                = vm.GenderId,
                    InterestedEnergyLevelId = vm.InterestedEnergyLevelId
                };
                db.Users.Add(user);
                db.SaveChanges();
                var rv = new CreatedUser
                {
                    Id                      = user.Id,
                    Name                    = user.Name,
                    Breed                   = user.Breed,
                    About                   = user.About,
                    Size                    = user.Size,
                    EnergyLevelId           = user.EnergyLevelId,
                    GenderId                = user.GenderId,
                    InterestedEnergyLevelId = user.InterestedEnergyLevelId
                };
                return(Ok(rv));
            }
        }
Exemple #3
0
 public static User ToUser(this CreatedUser user)
 {
     if (user != null)
     {
         return(new User
         {
             Name = user.Name,
             NumberIdCard = user.NumberIdCard,
             Surname = user.Surname,
             PhoneNumber = user.PhoneNumber,
             Email = user.Email
         });
     }
     else
     {
         return(null);
     }
 }
Exemple #4
0
            public async Task Login_Returns_BadRequest_When_UserHasErrorMessage()
            {
                var createdUser = new CreatedUser
                {
                    ErrorMessage = "Failed to create user"
                };

                _userManagerMock.Setup(m => m.CreateAsync(It.IsAny <NewUser>(), It.IsAny <CancellationToken>())).ReturnsAsync(createdUser);

                var newUser = new App.Controllers.V1.Users.Models.NewUser
                {
                    Username = "******",
                    Password = "******"
                };

                var response = await _sut.CreateAsync(newUser, CancellationToken.None);

                Assert.IsType <BadRequestObjectResult>(response.Result);

                _userManagerMock.Verify(m => m.CreateAsync(It.IsAny <NewUser>(), It.IsAny <CancellationToken>()), Times.Once);
            }
        public async Task <IActionResult> Register(UserForRegisterDto userforRegisterDto)
        {
            if (await _repository.UserExists(userforRegisterDto.Username.ToLower()))
            {
                ModelState.AddModelError("Username", "Username already exist");
            }

            if (await _repository.EmailExists(userforRegisterDto.Email.ToLower()))
            {
                ModelState.AddModelError("Email", "Email already exist");
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            userforRegisterDto.Username = userforRegisterDto.Username.ToLower();

            //if (await _repository.UserExists(userforRegisterDto.Username))
            //    return BadRequest("Username is already taken ");

            var userToCreate = new User
            {
                Username  = userforRegisterDto.Username,
                LastName  = userforRegisterDto.LastName.ToLower(),
                FirstName = userforRegisterDto.LastName.ToLower(),
                Email     = userforRegisterDto.Email.ToLower(),
            };
            var createUser = await _repository.Register(userToCreate, userforRegisterDto.Password);

            var createdUser = new CreatedUser {
                Email = createUser.Email, FirstName = createUser.FirstName, Id = createUser.Id, LastName = createUser.LastName, Username = createUser.Username
            };

            return(StatusCode(201, new { user = createdUser }));
        }
Exemple #6
0
        public int AddUser(CreatedUser createdUser)
        {
            User user = createdUser.ToUser();

            return(_userRepository.Insert(user.ToEntity()));
        }
        public IHttpActionResult Post([FromBody] NewUser user)
        {
            CreatedUser createdUser = userBusiness.Create(user);

            return(Created($"/api/users/{createdUser.Id}", createdUser));
        }