public void Configure_MapEditPhoneBookRequestToPhoneBook_ValidMapping() { int id = 1; string firstName = "abc"; string lastName = "efg"; string number = "123"; int phoneTypeId = 1; EditPhoneBookRequest request = new EditPhoneBookRequest { FirstName = firstName, LastName = lastName, Number = number, PhoneTypeId = phoneTypeId, Id = id }; PhoneBook phoneBook = Mapper.Map<EditPhoneBookRequest, PhoneBook>(request); Assert.AreEqual(id, phoneBook.Id); Assert.AreEqual(firstName, request.FirstName); Assert.AreEqual(lastName, request.LastName); Assert.AreEqual(number, request.Number); Assert.AreEqual(phoneTypeId, request.PhoneTypeId); }
/// <summary> /// Edits existing PhoneBook /// </summary> /// <param name="request">Object which defines PhoneBook</param> /// <returns>Error message and status if one occured</returns> public BaseResponse Edit(EditPhoneBookRequest request) { BaseResponse response = new BaseResponse(); try { List<PhoneBook> list = phoneBookRepository.Get(x => x.Id == request.Id).ToList(); if (list.Count() == 1) { PhoneBook entity = list.First(); if (entity.UserId == GetUserId()) { entity = Mapper.Map<EditPhoneBookRequest, PhoneBook>(request, entity); phoneBookRepository.Update(entity); phoneBookRepository.Save(); } else { Exception ex = new Exception("You are not authorized to edit this object"); response = new BaseResponse(1, ex); } } else { Exception ex = new Exception("Object you are trying to edit does not exist"); response = new BaseResponse(2, ex); } } catch (Exception ex) { response = new BaseResponse(-1, ex); } return response; }