public void ApoDepartmentServiceReturnCorrectIdAndValueWhenCreateSuccess() { var service = new ApoDepartmentService(_apoDivisionRepository, _apoGroupRepository, _apoDepartmentRepository); var resource = new ApoDepartmentCreateOrEdit() { ApoDivisionId = 1, ApoGroupId = 0, Name = "New Dept" }; var sut = service.Create(resource); var divisionName = _apoDivision.Single(x => x.Id == 1).Name; var groupName = _apoGroup.Single(x => x.Id == 0).Name; var lastId = _apoDepartment.Where(x => x.DivisionId == 1 && x.GroupId == 0).Select(x => x.Id).Max() + 1; Assert.IsType <ApoDepartmentDto>(sut); Assert.Equal(sut.Id, lastId); Assert.Equal(sut.DivisionId, 1); Assert.Equal(sut.DivisionName, divisionName); Assert.Equal(sut.GroupId, 0); Assert.Equal(sut.GroupName, groupName); Assert.Equal(sut.Name, "New Dept"); }
public void ApoDepartmentServiceShouldReturnNullWhenNameNotMatched() { var service = new ApoDepartmentService(_apoDivisionRepository, _apoGroupRepository, _apoDepartmentRepository); var resource = new ApoDepartmentCreateOrEdit() { Name = "Beverssages" }; var sut = service.GetByName(resource); Assert.Null(sut); }
public void ApoDepartmentServiceReturnErrorWhenUpdateDuplicateValueToSameDivsionAndType() { var service = new ApoDepartmentService(_apoDivisionRepository, _apoGroupRepository, _apoDepartmentRepository); var resource = new ApoDepartmentCreateOrEdit() { ApoDivisionId = 1, ApoGroupId = 0, Name = "Beverages" }; var exception = Record.Exception(() => service.Edit(2, resource)); Assert.NotNull(exception); Assert.IsType <ArgumentException>(exception); Assert.True(exception.Message.Contains($"Name {resource.Name} is Already exist.")); }
public HttpResponseMessage Update(int id, [FromBody] ApoDepartmentCreateOrEdit apoDepartmentForCreateOrEdit) { try { var updateApo = _apoDepartmentService.Edit(id, apoDepartmentForCreateOrEdit); if (updateApo != null) { return(Request.CreateResponse(HttpStatusCode.OK, updateApo)); } return(Request.CreateResponse(HttpStatusCode.InternalServerError)); } catch (ArgumentException e) { HttpError err = new HttpError(e.Message); return(Request.CreateResponse(HttpStatusCode.InternalServerError, err)); } }
public void ApoDepartmentShouldReturnCorrectValueWhenSearchMatched() { var service = new ApoDepartmentService(_apoDivisionRepository, _apoGroupRepository, _apoDepartmentRepository); var resource = new ApoDepartmentCreateOrEdit() { Name = "Beverages" }; var selectedApo = _apoDepartment.Single(x => x.Name.Equals("Beverages")); var divisionName = _apoDivision.Single(x => x.Id == selectedApo.DivisionId).Name; var groupName = _apoGroup.Single(x => x.Id == selectedApo.GroupId).Name; var sut = service.GetByName(resource); Assert.Equal(sut.Name, "Beverages"); Assert.Equal(sut.DivisionId, selectedApo.DivisionId); Assert.Equal(sut.DivisionName, divisionName); Assert.Equal(sut.GroupId, selectedApo.GroupId); Assert.Equal(sut.GroupName, groupName); Assert.Equal(sut.Id, selectedApo.Id); }
public void ApoDepartmentServiceReturnCorrectUpdateValueWhenUpdateDuplicateNameButNotSameTypeAndDivision() { var service = new ApoDepartmentService(_apoDivisionRepository, _apoGroupRepository, _apoDepartmentRepository); var updateApo = new ApoDepartmentCreateOrEdit() { ApoDivisionId = 1, ApoGroupId = 1, Name = "Beverages" }; var divisionName = _apoDivision.Single(x => x.Id == 1).Name; var groupName = _apoGroup.Single(x => x.Id == 1).Name; var sut = service.Edit(3, updateApo); Assert.Equal(sut.Name, "Beverages"); Assert.Equal(sut.DivisionId, 1); Assert.Equal(sut.DivisionName, divisionName); Assert.Equal(sut.GroupId, 1); Assert.Equal(sut.GroupName, groupName); Assert.Equal(sut.Id, 3); }
public void ApoDepartmentServiceReturnUpdatedValueWhenUpdateSuccess() { var service = new ApoDepartmentService(_apoDivisionRepository, _apoGroupRepository, _apoDepartmentRepository); var updateApo = new ApoDepartmentCreateOrEdit() { ApoDivisionId = 1, ApoGroupId = 0, Name = "Beverages -- new" }; var divisionName = _apoDivision.Single(x => x.Id == 1).Name; var groupName = _apoGroup.Single(x => x.Id == 0).Name; var sut = service.Edit(1, updateApo); Assert.Equal(sut.Name, "Beverages -- new"); Assert.Equal(sut.DivisionId, 1); Assert.Equal(sut.DivisionName, divisionName); Assert.Equal(sut.GroupId, 0); Assert.Equal(sut.GroupName, groupName); Assert.Equal(sut.Id, 1); }