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."));
        }
        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);
        }