示例#1
0
        public void UpdateShouldReturnCorrectValueWhenUpdateDuplicateValueButSameId()
        {
            var service = new ApoSubClassService(_apoClassRepository, _apoSubClassRepository);

            var resource = new ApoSubClassForCreateOrEdit()
            {
                Name       = "Import Frozen Appetizer",
                ApoClassId = 106
            };

            var compareObj = new ApoSubClassDto()
            {
                Name         = resource.Name,
                ApoClassId   = resource.ApoClassId,
                Id           = 105,
                IsActive     = 1,
                Code         = _apoSubClass.Single(x => x.Id == 105).Code,
                ApoClassName = _apoClass.Single(x => x.Id == resource.ApoClassId).Name
            };


            var sut = service.Edit(105, resource);

            Assert.IsType <ApoSubClassDto>(sut);
            AssertObjects.PropertyValuesAreEquals(sut, compareObj);
        }
示例#2
0
        public void ApoDepartmentServiceShouldReturnNullWhenNameNotMatched()
        {
            var service = new ApoSubClassService(_apoClassRepository, _apoSubClassRepository);

            var resource = new ApoSubClassForCreateOrEdit()
            {
                Name = "Miscellaneousssss"
            };

            var sut = service.GetByName(resource);


            Assert.Null(sut);
        }
示例#3
0
        public void UpdateShouldThrowErrorWhenUpdateDuplicateValueToCollection()
        {
            var service = new ApoSubClassService(_apoClassRepository, _apoSubClassRepository);

            var resource = new ApoSubClassForCreateOrEdit()
            {
                Name       = "Import Frozen Appetizer",
                ApoClassId = 1
            };

            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."));
        }
示例#4
0
        public void ApoClassServiceThrowErrorWhenAddDuplicateData()
        {
            var service = new ApoSubClassService(_apoClassRepository, _apoSubClassRepository);

            var resource = new ApoSubClassForCreateOrEdit()
            {
                Name       = "Yeast",
                ApoClassId = 1
            };

            var exception = Record.Exception(() => service.Create(resource));

            Assert.NotNull(exception);
            Assert.IsType <ArgumentException>(exception);
            Assert.True(exception.Message.Contains($"Name {resource.Name} is Already exist."));
        }
示例#5
0
        public HttpResponseMessage Update(int id, [FromBody] ApoSubClassForCreateOrEdit apoClassForCreateOrEdit)
        {
            try
            {
                var updateApo = _apoSubClassService.Edit(id, apoClassForCreateOrEdit);

                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));
            }
        }
示例#6
0
        public void ApoDepartmentShouldReturnCorrectValueWhenSearchMatched()
        {
            var service = new ApoSubClassService(_apoClassRepository, _apoSubClassRepository);

            var resource = new ApoSubClassForCreateOrEdit()
            {
                Name = "Import Frozen Appetizer"
            };

            var selectedApo = _apoSubClass.Single(x => x.Name.Equals("Import Frozen Appetizer"));
            var className   = _apoClass.Single(x => x.Id == selectedApo.ApoClassId).Name;

            var sut = service.GetByName(resource);


            Assert.Equal(sut.Name, "Import Frozen Appetizer");
            Assert.Equal(sut.ApoClassId, selectedApo.ApoClassId);
            Assert.Equal(sut.ApoClassName, className);
            Assert.Equal(sut.Id, selectedApo.Id);
        }
示例#7
0
        public void ApoClassReturnNewObjectWhenCreateSuccess()
        {
            var service = new ApoSubClassService(_apoClassRepository, _apoSubClassRepository);

            var resource = new ApoSubClassForCreateOrEdit()
            {
                Name       = "Miscellaneous -- test",
                ApoClassId = 1
            };

            var className = _apoClass.Single(x => x.Id == 1).Name;

            var lastId = _apoSubClass.OrderByDescending(x => x.Id).First();


            var sut = service.Create(resource);

            Assert.IsType <ApoSubClassDto>(sut);
            Assert.Equal(sut.Id, lastId.Id + 1);
            Assert.Equal(sut.Name, resource.Name);
            Assert.Equal(sut.ApoClassId, 1);
            Assert.Equal(sut.ApoClassName, className);
        }