Inheritance: Entity, ILookUpTypes
 public void shouldGetActivityLevelTypeFromName()
 {
     var activityLevelTypeRepositoryMock = new Mock<IActivityLevelTypeRepository>();
     var expectedActivityLevel = new ActivityLevelType();
     var expectedLevelToGet = "Medel";
     activityLevelTypeRepositoryMock.Setup(x => x.GetByName(It.Is<string>(y => y == expectedLevelToGet))).Returns(expectedActivityLevel);
     var result = new ActivityLevelTypeBusinessLogic(activityLevelTypeRepositoryMock.Object).GetActivityLevelType(expectedLevelToGet);
     Assert.That(result, Is.SameAs(expectedActivityLevel));
 }
Exemplo n.º 2
0
 public void shouldGetDailyCalorieNeed()
 {
     const decimal weight = 59;
     const decimal height = 168;
     const int age = 55;
     var female = new GenderType {GenderBMRFactor = -161};
     var activityLevel = new ActivityLevelType { EnergyFactor = 1.2M };
     var dailyCalorieNeed = new CalorieCalculator().GetDailyCalorieNeed(weight, height, age, female, activityLevel);
     Assert.That(dailyCalorieNeed, Is.EqualTo(1449.372m));
 }
        public void shouldShowStoredActivityLevelForLoggedinUser()
        {
            var expectedActivityLevel = new ActivityLevelType { Name = "selected" };

            var userProfileBusinessLogicMock = new Mock<IUserProfileBusinessLogic>();
            userProfileBusinessLogicMock.Setup(x => x.GetActivityLevel(It.IsAny<User>())).Returns(expectedActivityLevel);

            var activityLevelBusinessLogicMock = new Mock<IActivityLevelTypeBusinessLogic>();
            activityLevelBusinessLogicMock.Setup(x => x.GetActivityLevelTypes()).Returns(new List<ActivityLevelType> { new ActivityLevelType { Name = "selected" }, new ActivityLevelType { Name = "notSelected" } });

            var activityLevelViewTypes = new ActivityLevelViewTypeConverter(userProfileBusinessLogicMock.Object, activityLevelBusinessLogicMock.Object).GetViewTypes(new User());

            var selectedActivityLevel = (from activityLevel in activityLevelViewTypes where activityLevel.Selected select activityLevel).FirstOrDefault();

            userProfileBusinessLogicMock.VerifyAll();
            Assert.That(selectedActivityLevel.Text, Is.SameAs(expectedActivityLevel.Name));
        }
        public void shouldGetBMR()
        {
            const decimal weight = 83M;
            const int age = 24;
            const int height = 174;
            var gender = new GenderType{Name="Man"};
            var activityLevel = new ActivityLevelType { Name = "Medel" };
            var calorieCalculator = new Mock<ICalorieCalculator>();

            var userProfile = new UserProfile { Weight = weight, Age = age, Length = height , Gender = gender, ActivityLevel = activityLevel,  User = User };

            var userProfileRepositoryMock = new Mock<IUserProfileRepository>();
            userProfileRepositoryMock.Setup(x => x.GetByUserId(User.Id)).Returns(userProfile);

            calorieCalculator.Setup(x => x.GetBMR(weight, height, age, gender)).Returns(123);

            var result = new UserProfileBusinessLogic(userProfileRepositoryMock.Object, null, null, calorieCalculator.Object).GetBMR(User);

            Assert.That(result, Is.EqualTo(123));
        }
Exemplo n.º 5
0
 public decimal GetEnergyFactor(ActivityLevelType activityLevelType)
 {
     return activityLevelType.EnergyFactor;
 }
Exemplo n.º 6
0
 //http://www.bmi-calculator.net/bmr-calculator/harris-benedict-equation/
 public decimal GetDailyCalorieNeed(decimal weight, decimal height, int age, GenderType gender, ActivityLevelType activityLevel)
 {
     return GetBMR(weight, height, age, gender) * activityLevel.EnergyFactor;
 }
 public void shouldGetActivityLevel()
 {
     var expectedActivityLevel = new ActivityLevelType();
     var userProfile = new UserProfile { ActivityLevel = expectedActivityLevel, User = User };
     AssertProperty(expectedActivityLevel, User, userProfile, x => x.GetActivityLevel(User));
 }
        public void shouldSaveProfile()
        {
            const decimal expectedIdealWeight = 64;
            const decimal expectedLength = 1.83M;
            const decimal expectedWeight = 78M;
            const int expectedAge = 23;
            const string expectedGenderToGet = "Man";
            const string expectedActivityLevelToGet = "Medel";
            var expectedGender = new GenderType();
            var expectedActivityLevel = new ActivityLevelType();

            var genderTypeBusinessLogicMock = new Mock<IGenderTypeBusinessLogic>();
            genderTypeBusinessLogicMock.Setup(x => x.GetGenderType(expectedGenderToGet)).Returns(expectedGender);

            var activityLevelTypeBusinessLogicMock = new Mock<IActivityLevelTypeBusinessLogic>();
            activityLevelTypeBusinessLogicMock.Setup(x => x.GetActivityLevelType(expectedActivityLevelToGet)).Returns(expectedActivityLevel);

            var userProfileRepositoryMock = new Mock<IUserProfileRepository>();
            userProfileRepositoryMock.Setup(x => x.SaveOrUpdate(It.Is<UserProfile>(y => y.Weight == expectedWeight && y.Length == expectedLength && y.IdealWeight == expectedIdealWeight && y.User.Id == User.Id && y.Age == expectedAge && y.Gender == expectedGender && y.ActivityLevel == expectedActivityLevel)));

            new UserProfileBusinessLogic(userProfileRepositoryMock.Object, genderTypeBusinessLogicMock.Object, activityLevelTypeBusinessLogicMock.Object, null).SaveProfile(User, expectedIdealWeight, expectedLength, expectedWeight, expectedAge, expectedGenderToGet, expectedActivityLevelToGet);
            userProfileRepositoryMock.VerifyAll();
            activityLevelTypeBusinessLogicMock.VerifyAll();
        }