Ejemplo n.º 1
0
        /// <summary>
        /// Recalculates (updates) all values of all units based on the source unit.
        /// </summary>
        /// <param name="sourceUnit"></param>
        /// <returns></returns>
        public static IEnumerable <IUnit> Recalculate(IUnit sourceUnit)
        {
            using (UnitsManager unitsManager = UnitsManager.CreateInstance()) {
                unitsManager.UpdateUnits(sourceUnit);

                return(unitsManager.Units);
            }
        }
Ejemplo n.º 2
0
        public void ManagerTest()
        {
            var manager = new UnitsManager(new UnitCollection(UnitCollection.CreateUnits()));

            var meter = manager.GetUnit(UnitID.Meter); //manager.Units.First(p => p.Name.Equals("Meter", StringComparison.InvariantCultureIgnoreCase));

            Assert.IsNotNull(meter, "The unit Meter was not found.");

            meter.Magnitude = 5;   // 5m

            manager.UpdateUnits(meter);
        }
Ejemplo n.º 3
0
        public void ConversionCorrectness()
        {
            var manager = new UnitsManager(new UnitCollection(UnitCollection.CreateUnits()));

            var inches = manager.GetUnit(UnitID.Inch);

            Assert.IsNotNull(inches);

            var feet = manager.GetUnit(UnitID.Foot);

            Assert.IsNotNull(feet);

            inches.Magnitude = 32;
            manager.UpdateUnits(sourceUnit: inches);

            Assert.AreEqual <double>(expected: 2.6666666666666667, actual: feet.Magnitude.Value, message: "Conversion from inches to feet is incorrect!");
        }