Beispiel #1
0
        /// <summary>
        /// The post.
        /// </summary>
        /// <param name="item">
        /// The item.
        /// </param>
        /// <returns>
        /// The <see cref="HttpResponseMessage"/>.
        /// </returns>
        /// <remarks>
        /// POST users
        /// </remarks>
        public HttpResponseMessage Post(PostUser item)
        {
            var user = new User()
                {
                    Username = item.Username, 
                    Password = EncryptedString.Create(item.Password, _encryptionService)
                };

            if (user.IsValid)
            {
                _userDataMapper.Insert(user);

                GetUser createdItem = _mapper.Map<User, GetUser>(user);
                return CreatedHttpResponse(createdItem.ID, createdItem);
            }

            return Request.CreateResponse(HttpStatusCode.BadRequest, user.ValidationErrors);
        }
Beispiel #2
0
        /// <summary>
        /// The post.
        /// </summary>
        /// <returns>
        /// The <see cref="GetUser"/>.
        /// </returns>
        private GetUser Post()
        {
            // Arrange
            var user = new PostUser()
                {
                    Username = RandomGenerator.GetRandomString(10), 
                    Password = RandomGenerator.GetRandomString(10)
                };

            // Act
            var response = Client.PostAsJsonAsync(Resources.Users, user).Result;

            // Assert
            Assert.AreEqual(HttpStatusCode.Created, response.StatusCode, "POST user not ok.");

            return response.Content.ReadAsAsync<GetUser>().Result;
        }