Exemple #1
0
        public void Create_AreGeneratedDailyDietPlansValid(int startYear, int startMonth, int startDay,
                                                           int endYear, int endMonth, int endDay)
        {
            DateTime startDate   = new DateTime(startYear, startMonth, startDay);
            DateTime endDate     = new DateTime(endYear, endMonth, endDay);
            var      newDietPlan = new DietPlan
            {
                Id        = 1,
                StartDate = startDate,
                EndDate   = endDate,
            };
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            DietPlan createResult = sut.Create(newDietPlan);
            TimeSpan duration     = endDate - startDate + new TimeSpan(1, 0, 0, 0);

            createResult.DailyDietPlanList.Count.Should().Be(duration.Days);

            foreach (var dailyDietPlan in createResult.DailyDietPlanList)
            {
                TimeSpan daysFromStart = new TimeSpan(dailyDietPlan.DayNumber - 1);
                dailyDietPlan.Date.Should().Be(startDate + daysFromStart);
            }
        }
Exemple #2
0
        public void ListAllDietPlans_IsOfTypeDietPlanList()
        {
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            dietPlanRepositoryMock.Setup(repository => repository.ListAllDietPlans("DummyId")).Returns(new List <DietPlan>());

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.ListAllDietPlans("DummyId").Should().BeOfType(typeof(List <DietPlan>));
        }
Exemple #3
0
        public void Create_IsResultIdValid(int id)
        {
            var newDietPlan = new DietPlan {
                Id = id
            };
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.Create(newDietPlan).Should().Match(newDietPlan => ((DietPlan)newDietPlan).Id == id);
        }
Exemple #4
0
        public void ListAllDietPlans_CallsListAllDietPlans()
        {
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            dietPlanRepositoryMock.Setup(repository => repository.ListAllDietPlans("DummyId")).Returns(new List <DietPlan>());

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.ListAllDietPlans("DummyId");

            dietPlanRepositoryMock.Verify(repository => repository.ListAllDietPlans("DummyId"));
        }
Exemple #5
0
        public void GetDietPlan_IsOfTypeDietPlan(int id)
        {
            var dietPlan = new DietPlan {
                Id = id
            };
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            dietPlanRepositoryMock.Setup(repository => repository.GetDietPlanById(id)).Returns(dietPlan);

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.GetDietPlan(id).Should().BeOfType(typeof(DietPlan));
        }
Exemple #6
0
        public void GetDietPlan_IsResultIdValid(int id)
        {
            var dietPlan = new DietPlan {
                Id = id
            };
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            dietPlanRepositoryMock.Setup(repository => repository.GetDietPlanById(id)).Returns(dietPlan);

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.GetDietPlan(id).Should().Match(dietPlan => ((DietPlan)dietPlan).Id == id);
        }
Exemple #7
0
        public void Create_CallsInsertDietPlan(int id)
        {
            var newDietPlan = new DietPlan {
                Id = id
            };
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();
            //the invocation below was unnecessary
            //dietPlanRepositoryMock.Setup(repository => repository.InsertDietPlan(newDietPlan));

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.Create(newDietPlan);

            dietPlanRepositoryMock.Verify(repository => repository.InsertDietPlan(newDietPlan));
        }
Exemple #8
0
        public void GetDietPlan_CallsGetDietPlanById(int id)
        {
            var dietPlan = new DietPlan {
                Id = id
            };
            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            dietPlanRepositoryMock.Setup(repository => repository.GetDietPlanById(id)).Returns(dietPlan);

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.GetDietPlan(id);

            dietPlanRepositoryMock.Verify(repository => repository.GetDietPlanById(id));
        }
Exemple #9
0
        public void ListAllDietPlans_IsListContainingCorrectNumberOfElements(int dietPlansCount)
        {
            var listOfThreePlans = new List <DietPlan>();

            for (int i = 0; i < dietPlansCount; i++)
            {
                listOfThreePlans.Add(new DietPlan());
            }

            var dietPlanRepositoryMock = new Mock <IDietPlanRepository>();

            dietPlanRepositoryMock.Setup(repository => repository.ListAllDietPlans("DummyId")).Returns(listOfThreePlans);

            var sut = new DietPlanService(dietPlanRepositoryMock.Object);

            sut.ListAllDietPlans("DummyId").Should().HaveCount(dietPlansCount);
        }
Exemple #10
0
        public void getDietPlanByNameSuccessTest()
        {
            ////Arrange
            var dietPlanEntity = new DAL.Models.DietPlans
            {
                Id          = 1,
                Name        = "Diet plan",
                Information = "Test",
                PersonId    = 12,
                Person      = new DAL.Models.Persons
                {
                    Id       = 2,
                    Name     = "Tom",
                    Email    = "*****@*****.**",
                    Password = "******"
                },
                Meals = new List <DAL.Models.Meals>
                {
                    new DAL.Models.Meals {
                        Id = 1, Name = "Meal1", Information = "Test1", DietPlanId = 1
                    },
                    new DAL.Models.Meals {
                        Id = 2, Name = "Meal2", Information = "Test2", DietPlanId = 1
                    }
                }
            };

            var dietPlanEntity_List = new List <DAL.Models.DietPlans> {
                dietPlanEntity
            };

            var dietPlan = DietPlanService.DietPlanEntityObjToPOCO(dietPlanEntity);

            _dietPlanAccess.Setup(access => access.GetDietPlansByName(It.IsAny <string>())).Returns(dietPlanEntity_List);

            //// Act
            var returned = _service.getDietPlansByName("");

            //// Assert
            _dietPlanAccess.Verify(access => access.GetDietPlansByName(It.IsAny <string>()), Times.Once);
            Assert.Equal(dietPlan.Id, returned[0].Id);
            Assert.Equal(dietPlan.Name, returned[0].Name);
            Assert.Equal(dietPlan.Information, returned[0].Information);
            Assert.Equal(dietPlan.Meals[1].Id, returned[0].Meals[1].Id);
        }
Exemple #11
0
        public IActionResult GetDietPlanById(int id)
        {
            var        service = new DietPlanService(_genericAccess, _dietPlansAccess);
            JsonResult result;

            try
            {
                var dietPlan = service.getDietPlanById(id);
                result            = Json(dietPlan);
                result.StatusCode = 200;
            }
            catch (Exception e)
            {
                result            = Json(e);
                result.StatusCode = 400;
            }

            return(result);
        }
Exemple #12
0
        public IActionResult Delete(int id)
        {
            var        service = new DietPlanService(_genericAccess, _dietPlansAccess);
            JsonResult result;

            try
            {
                service.delete(id);
                result            = Json("");
                result.StatusCode = 200;
            }
            catch (Exception e)
            {
                result            = Json(e);
                result.StatusCode = 400;
            }

            return(result);
        }
Exemple #13
0
        public IActionResult Update(POCO.DietPlan dietPlan)
        {
            var        service = new DietPlanService(_genericAccess, _dietPlansAccess);
            JsonResult result;

            try
            {
                var ret = service.update(dietPlan);
                result            = Json(ret);
                result.StatusCode = 200;
            }
            catch (Exception e)
            {
                result            = Json(e);
                result.StatusCode = 400;
            }

            return(result);
        }
Exemple #14
0
        public IActionResult GetDietPlansByName(string name)
        {
            var        service = new DietPlanService(_genericAccess, _dietPlansAccess);
            JsonResult result;

            try
            {
                var dietPlans = service.getDietPlansByName(name);
                result            = Json(dietPlans);
                result.StatusCode = 200;
            }
            catch (Exception e)
            {
                result            = Json(e);
                result.StatusCode = 400;
            }

            return(result);
        }
Exemple #15
0
        public void UpdateDietPlanSuccessTest()
        {
            //// Arrange
            var dietPlan = new DietPlan
            {
                Id          = 1,
                Name        = "Diet Plan 1",
                Information = "Just updated",
                PersonId    = 12
            };

            var entity = DietPlanService.POCOObjToEntity(dietPlan);

            _genericAccess.Setup(access => access.Update(It.IsAny <DAL.Models.DietPlans>(), It.IsAny <int>())).Returns(entity);

            //// Act
            var returned = _service.update(dietPlan);

            //// Assert
            _genericAccess.Verify(access => access.Update(It.IsAny <DAL.Models.DietPlans>(), It.IsAny <int>()), Times.Once);
            Assert.True(returned);
        }
Exemple #16
0
 public DietPlanController(GenericAccessInterface genericAccess, DietPlansAccessInterface dietPlansAccess)
 {
     _genericAccess   = genericAccess;
     _dietPlansAccess = dietPlansAccess;
     _service         = new DietPlanService(_genericAccess, _dietPlansAccess);
 }
Exemple #17
0
 public DietPlanController(DietPlanService service)
 {
     _dietPlanService = service;
 }
Exemple #18
0
 public DietPlanTest()
 {
     _service = new DietPlanService(_genericAccess.Object, _dietPlanAccess.Object);
 }