//Please write your properties and functions here. This part will not be replaced. /// <summary> /// Gets the unsaved food group. /// </summary> /// <param name="p">The paramters</param> /// <returns></returns> public FoodGroup GetUnsavedFoodGroup(FoodGroup_GetUnsavedFoodGroupSP p) { var filter = new FilterExpression(); filter.AddFilter(vFoodGroup.ColumnNames.UserID, p.UserID); filter.AddFilter(vFoodGroup.ColumnNames.IsGroupSaved, false); filter.AddFilter(vFoodGroup.ColumnNames.FoodServingTimeTypeID, p.FoodServingTimeTypeID); var list = GetByFilterT(new GetByFilterParameters(filter)); if (list.Count > 0) { return(list[0]); } else { var g = new FoodGroup { FoodServingTimeTypeID = p.FoodServingTimeTypeID, IsGroupSaved = false, UserID = p.UserID, RecordDateTimeUserLocal = DateTime.Now }; Insert(g); return(g); } }
public void OnBeforeUpdateTest() { var target = FoodGroupEN.GetService(""); var p = new FoodGroup_GetUnsavedFoodGroupSP { FoodServingTimeTypeID = (int)EntityEnums.FoodServingTimeTypeEnum.Other, UserID = TestEnums.User.constPatientUserID }; var obj = target.GetUnsavedFoodGroup(p); // clearing previous results var dp = new DailyActivity_GetByTypeAndExternalEntityAndUserSP() { UserID = TestEnums.User.constPatientUserID, DailyActivityTypeID = (int)EntityEnums.DailyActivityTypeEnum.Eating, ExternalEntityID = obj.FoodGroupID }; var list = DailyActivityEN.GetService().GetByTypeAndExternalEntityAndUser(dp); if (list.Count > 0) { DailyActivityEN.GetService().Delete(list[0], null); } // test update obj.RecordDateTimeUserLocal = DateTime.Now; //var foodgroupitem1 = new FoodGroupItem //{ // FoodGroupID = obj.FoodGroupID, // Calorie = 0, // Carb = 0, // Protein = 0, // Fat = 0, // FoodID = new Guid("176B0637-65E9-409E-829C-0001D06B5626"), // FoodServingTypeID = 0, // ServingAmount = 100, // ServingGrams = 50 //}; //FoodGroupItemEN.GetService().Insert(foodgroupitem1, null); target.Update(obj, null); // check if daily activity is created successfully list = DailyActivityEN.GetService().GetByTypeAndExternalEntityAndUser(dp); Assert.IsTrue(obj.IsGroupSaved == true, "group should be saved after update"); Assert.IsTrue(list.Count == 1, "DailyActivity has not been created after update"); }
public void GetUnsavedFoodGroupTest() { var target = FoodGroupEN.GetService(""); var p = new FoodGroup_GetUnsavedFoodGroupSP { FoodServingTimeTypeID = (int)EntityEnums.FoodServingTimeTypeEnum.Other, UserID = TestEnums.User.constPatientUserID }; var first = target.GetUnsavedFoodGroup(p); var firstId = first.FoodGroupID; target.Delete(first, null); var second = target.GetUnsavedFoodGroup(p); Assert.IsTrue(firstId != second.FoodGroupID); }
public void OnAfterUpdateTest() { var target = FoodGroupEN.GetService(""); var p = new FoodGroup_GetUnsavedFoodGroupSP { FoodServingTimeTypeID = (int)EntityEnums.FoodServingTimeTypeEnum.Other, UserID = TestEnums.User.constPatientUserID }; var obj = target.GetUnsavedFoodGroup(p); var foodgroupitem1 = new FoodGroupItem { FoodGroupID = obj.FoodGroupID, Calorie = 100, Carb = 200, Protein = 300, Fat = 400, FoodID = new Guid("176B0637-65E9-409E-829C-0001D06B5626"), FoodServingTypeID = 0, ServingAmount = 100, ServingGrams = 50 }; var foodgroupitem2 = new FoodGroupItem { FoodGroupID = obj.FoodGroupID, Calorie = 100, Carb = 200, Protein = 300, Fat = 400, FoodID = new Guid("176B0637-65E9-409E-829C-0001D06B5626"), FoodServingTypeID = 0, ServingAmount = 100, ServingGrams = 50 }; FoodGroupItemEN.GetService().Insert(foodgroupitem1, null); FoodGroupItemEN.GetService().Insert(foodgroupitem2, null); // updating foodgroup to save information in the database obj.RecordDateTimeUserLocal = DateTime.Now; target.Update(obj, null); // Checking sum values be updated in Daily Activity entity var dp = new DailyActivity_GetByTypeAndExternalEntityAndUserSP() { UserID = TestEnums.User.constPatientUserID, DailyActivityTypeID = (int)EntityEnums.DailyActivityTypeEnum.Eating, ExternalEntityID = obj.FoodGroupID }; var list = DailyActivityEN.GetService().GetByTypeAndExternalEntityAndUser(dp); Assert.IsTrue(list.Count > 0, "Daily Activity should exists."); var dailyActivity = list[0]; Assert.AreEqual(dailyActivity.Carb, foodgroupitem1.Carb + foodgroupitem2.Carb); Assert.AreEqual(dailyActivity.Protein, foodgroupitem1.Protein + foodgroupitem2.Protein); Assert.AreEqual(dailyActivity.Fat, foodgroupitem1.Fat + foodgroupitem2.Fat); Assert.AreEqual(dailyActivity.Calorie, foodgroupitem1.Calorie + foodgroupitem2.Calorie); // Note: This part is another test case, but I put it here to avoid writing the whole test again // Check updates of a FoodGroupItem to propagate to daily activity foodgroupitem1.Calorie = foodgroupitem1.Calorie * 2; foodgroupitem1.Fat = foodgroupitem1.Fat * 2; foodgroupitem1.Protein = foodgroupitem1.Protein * 2; foodgroupitem1.Carb = foodgroupitem1.Carb * 2; FoodGroupItemEN.GetService().Update(foodgroupitem1, null); list = DailyActivityEN.GetService().GetByTypeAndExternalEntityAndUser(dp); Assert.IsTrue(list.Count > 0, "Daily Activity should exists."); dailyActivity = list[0]; Assert.AreEqual(dailyActivity.Carb, foodgroupitem1.Carb + foodgroupitem2.Carb); Assert.AreEqual(dailyActivity.Protein, foodgroupitem1.Protein + foodgroupitem2.Protein); Assert.AreEqual(dailyActivity.Fat, foodgroupitem1.Fat + foodgroupitem2.Fat); Assert.AreEqual(dailyActivity.Calorie, foodgroupitem1.Calorie + foodgroupitem2.Calorie); }