public void ToWeightType_shouldUpdateSpecificLocalizedValue() { //arrange WeightType weight = new WeightType() { Amount = 1, Desc = "100 גרם", GmWgt = 100, LocalizedDescription = new Localized("he", "100 גרם") }; weight.LocalizedDescription.AddDescription("en-US", "100 gramm"); Dish dish = new Dish(); dish.DefaultWeight = weight; //act WeightTypeModel weightModelDefault = weight.ToWeightTypeModel(null); WeightTypeModel weightModelHe = weight.ToWeightTypeModel("he"); WeightTypeModel weightModelEn = weight.ToWeightTypeModel("en-US"); weightModelDefault.Desc = "111 גרם"; weightModelHe.Desc = "222 גרם"; weightModelEn.Desc = "333 gramm"; WeightType convertedWeightDefault = weightModelDefault.ToWeightType(dish, null); WeightType convertedweightHe = weightModelHe.ToWeightType(dish, "he"); WeightType convertedweightEn = weightModelEn.ToWeightType(dish, "en-US"); //Assert Assert.IsNotNull(convertedWeightDefault); Assert.IsNotNull(convertedweightHe); Assert.IsNotNull(convertedweightEn); Assert.IsNotNull(convertedWeightDefault.LocalizedDescription); Assert.IsNotNull(convertedweightHe.LocalizedDescription); Assert.IsNotNull(convertedweightEn.LocalizedDescription); Assert.AreEqual(convertedWeightDefault.Desc, "111 גרם"); Assert.AreEqual(convertedweightHe.Desc, "222 גרם"); Assert.AreEqual(convertedweightEn.Desc, "100 גרם"); Assert.AreEqual(convertedweightHe.LocalizedDescription.GetDescription("he"), "222 גרם"); Assert.AreEqual(convertedweightEn.LocalizedDescription.GetDescription("en-US"), "333 gramm"); }
public static WeightType ToWeightType(this WeightTypeModel weight, Dish dish, string lang = DefaultLang) { WeightType returnValue = new WeightType() { Amount = weight.Amount, //Desc = weight.Desc, GmWgt = weight.GmWgt }; //If already has Localized Description if (dish.DefaultWeight != null && dish.DefaultWeight.LocalizedDescription != null) { returnValue.Desc = dish.DefaultWeight.Desc; returnValue.LocalizedDescription = dish.DefaultWeight.LocalizedDescription; } if (lang == null || lang == DefaultLang) { returnValue.Desc = weight.Desc; } if (lang != null) { returnValue.LocalizedDescription.UpdateDescription(lang, weight.Desc); } return returnValue; }
public void ToWeightTypeModel_shouldConvertToSpecificLanguage() { //arrange WeightType weight = new WeightType() { Desc = "100 גרם", LocalizedDescription = new Localized("he", "100 גרם") }; weight.LocalizedDescription.AddDescription("en-US", "100 gramm"); //act WeightTypeModel weightModelDefault = weight.ToWeightTypeModel(null); WeightTypeModel weightModelHe = weight.ToWeightTypeModel("he"); WeightTypeModel weightModelEn = weight.ToWeightTypeModel("en-US"); //Assert Assert.IsNotNull(weightModelDefault); Assert.IsNotNull(weightModelHe); Assert.IsNotNull(weightModelEn); Assert.AreEqual(weightModelDefault.Desc, "100 גרם"); Assert.AreEqual(weightModelHe.Desc, "100 גרם"); Assert.AreEqual(weightModelEn.Desc, "100 gramm"); }