public void GetGravityPointTest() { const double specificGravity = 1.037; var gravityUnit = AlcoholUtility.GetGravityUnit(specificGravity); gravityUnit.Should().Be(37); }
public static Fermentable GetFermentable(XElement fermentableEntry) { var name = GetNameFromRecord(fermentableEntry); var origin = fermentableEntry.GetChildElementValue("ORIGIN"); var notes = GetNotesFromRecord(fermentableEntry); var type = EnumConverter.Parse <FermentableType>(fermentableEntry.GetChildElementValue("TYPE")); var yieldValue = Convert.ToSingle(fermentableEntry.GetChildElementValue("YIELD")); var yield = type == FermentableType.Grain ? (float?)yieldValue : null; var color = Convert.ToSingle(fermentableEntry.GetChildElementValue("COLOR")); var diastaticPower = float.TryParse(fermentableEntry.GetChildElementValue("DIASTATIC_POWER"), out var diastaticPowerParsed) ? (float?)diastaticPowerParsed : null; var potential = Convert.ToDouble(fermentableEntry.GetChildElementValue("POTENTIAL")); var maltCategoryValue = fermentableEntry.Element("malt-category")?.Value; var characteristics = new FermentableCharacteristics(yield, color, diastaticPower) { Type = type, YieldByWeight = type != FermentableType.Grain ? yieldValue : null, GravityPoint = AlcoholUtility.GetGravityUnit(potential), MaltCategory = maltCategoryValue != null?EnumConverter.Parse <MaltCategory>(maltCategoryValue) : null }; return(new Fermentable(name, characteristics, notes, origin)); }