public void InfoType_Count_When_All_Populated_Should_Be_Three()
        {
            fixture.PopulateAll();
            var repository = new InfoTypeRepository(fixture.context);
            var c          = repository.Get().Count();

            Assert.Equal(3, c);
        }
        public void Controller_Post_Should_Be_OkResult()
        {
            var fixture    = new DbContextFixture();
            var logger     = new Mock <ILogger <InfoTypesController> >().Object;
            var repository = new InfoTypeRepository(fixture.context);
            var controller = new InfoTypesController(logger, repository);
            ActionResult <InfoType> result = controller.Post(InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(0));

            result.Result.Should().BeOfType <OkObjectResult>();
        }
        public void Controller_Get_Should_Be_NoContentResult()
        {
            var fixture    = new DbContextFixture();
            var logger     = new Mock <ILogger <InfoTypesController> >().Object;
            var repository = new InfoTypeRepository(fixture.context);
            var controller = new InfoTypesController(logger, repository);
            ActionResult <IQueryable <InfoType> > result = controller.Get();

            result.Result.Should().BeOfType <NoContentResult>();
        }
        public void Controller_Get_ById_Should_Be_NoContentResult()
        {
            var fixture    = new DbContextFixture();
            var logger     = new Mock <ILogger <InfoTypesController> >().Object;
            var repository = new InfoTypeRepository(fixture.context);
            var controller = new InfoTypesController(logger, repository);
            var e          = InfoTypeEntityTypeConfiguration.InfoTypeSeed.First().Id;
            ActionResult <InfoType> result = controller.Get(e);

            result.Result.Should().BeOfType <NoContentResult>();
        }
        public void Controller_Delete_Should_Be_NotFound()
        {
            var fixture    = new DbContextFixture();
            var logger     = new Mock <ILogger <InfoTypesController> >().Object;
            var repository = new InfoTypeRepository(fixture.context);
            var controller = new InfoTypesController(logger, repository);
            var eid        = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(1).Id;
            ActionResult <InfoType> result = controller.Delete(eid);

            result.Result.Should().BeOfType <NotFoundResult>();
        }
        public void Remove_A_InfoType_When_All_Populated_Should_Be_Two()
        {
            fixture.PopulateAll();
            var repository = new InfoTypeRepository(fixture.context);
            var id         = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(2).Id;
            var entity     = repository.Find(id as object).Result;

            repository.Remove(entity);
            var entities = repository.Get();
            var count    = entities.Count();

            Assert.Equal(2, count);
        }
        public void Add_A_InfoType_When_Not_Populated_Should_Be_Four()
        {
            fixture.PopulatePartial();
            var repository = new InfoTypeRepository(fixture.context);
            var entity     = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(1);

            entity.Id   = 4;
            entity.Name = "TestInfoType";
            repository.Add(entity);
            var count = repository.Get().Count();

            Assert.Equal(4, count);
        }
        public void Controller_Patch_Should_Be_BadRequest()
        {
            var fixture    = new DbContextFixture();
            var logger     = new Mock <ILogger <InfoTypesController> >().Object;
            var repository = new InfoTypeRepository(fixture.context);
            var controller = new InfoTypesController(logger, repository);
            var e          = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(2);
            var delta      = new Delta <InfoType>(typeof(InfoType));

            delta.TrySetPropertyValue(nameof(InfoType.Name), e.Name);
            ActionResult <InfoType> result = controller.Patch(e.Id, delta);

            result.Result.Should().BeOfType <BadRequestResult>();
        }
        public void Update_the_Data_Of_InfoType_Should_Not_Be_Same()
        {
            fixture.PopulateAll();
            var repository = new InfoTypeRepository(fixture.context);
            var id         = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(2).Id;
            var data       = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(2).Name;
            var entity     = repository.Find(id as object).Result;

            entity.Name = "F";
            repository.Update(entity);
            var entityUpdated = repository.Find(id as object).Result;

            Assert.NotEqual(data, entityUpdated.Name);
        }
        public void Controller_Put_Should_Be_badRequest()
        {
            var fixture = new DbContextFixture();
            var logger  = new Mock <ILogger <InfoTypesController> >().Object;

            fixture.PopulateAll();
            var repository = new InfoTypeRepository(fixture.context);
            var controller = new InfoTypesController(logger, repository);
            var eid        = InfoTypeEntityTypeConfiguration.InfoTypeSeed.ElementAt(1).Id;
            var e          = repository.Find(eid as object).Result;

            e.Name = "Gg";
            var delta = new Delta <InfoType>(typeof(InfoType));

            delta.TrySetPropertyValue(nameof(InfoType.Name), e.Name);
            ActionResult <InfoType> result = controller.Put(e.Id, delta);

            result.Result.Should().BeOfType <BadRequestResult>();
        }