public void Equals_RelativeTolerance_IsImplemented()
        {
            var v = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            Assert.True(v.Equals(SpecificDischarge.FromLiterSecondPerSquareMeters(1), LiterSecondPerSquareMetersTolerance, ComparisonType.Relative));
            Assert.False(v.Equals(SpecificDischarge.Zero, LiterSecondPerSquareMetersTolerance, ComparisonType.Relative));
        }
        public void DefaultCtor_ReturnsQuantityWithZeroValueAndBaseUnit()
        {
            var quantity = new SpecificDischarge();

            Assert.Equal(0, quantity.Value);
            Assert.Equal(SpecificDischargeUnit.LiterSecondPerSquareMeter, quantity.Unit);
        }
        public void As()
        {
            var litersecondpersquaremeter = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            AssertEx.EqualTolerance(CubicFootMinutePerSquareFootsInOneLiterSecondPerSquareMeter, litersecondpersquaremeter.As(SpecificDischargeUnit.CubicFootMinutePerSquareFoot), CubicFootMinutePerSquareFootsTolerance);
            AssertEx.EqualTolerance(CubicMeterPerHourSquareMetersInOneLiterSecondPerSquareMeter, litersecondpersquaremeter.As(SpecificDischargeUnit.CubicMeterPerHourSquareMeter), CubicMeterPerHourSquareMetersTolerance);
            AssertEx.EqualTolerance(LiterSecondPerSquareMetersInOneLiterSecondPerSquareMeter, litersecondpersquaremeter.As(SpecificDischargeUnit.LiterSecondPerSquareMeter), LiterSecondPerSquareMetersTolerance);
        }
        public void ConversionRoundTrip()
        {
            SpecificDischarge litersecondpersquaremeter = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            AssertEx.EqualTolerance(1, SpecificDischarge.FromCubicFootMinutePerSquareFoots(litersecondpersquaremeter.CubicFootMinutePerSquareFoots).LiterSecondPerSquareMeters, CubicFootMinutePerSquareFootsTolerance);
            AssertEx.EqualTolerance(1, SpecificDischarge.FromCubicMeterPerHourSquareMeters(litersecondpersquaremeter.CubicMeterPerHourSquareMeters).LiterSecondPerSquareMeters, CubicMeterPerHourSquareMetersTolerance);
            AssertEx.EqualTolerance(1, SpecificDischarge.FromLiterSecondPerSquareMeters(litersecondpersquaremeter.LiterSecondPerSquareMeters).LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
        }
        public void LiterSecondPerSquareMeterToSpecificDischargeUnits()
        {
            SpecificDischarge litersecondpersquaremeter = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            AssertEx.EqualTolerance(CubicFootMinutePerSquareFootsInOneLiterSecondPerSquareMeter, litersecondpersquaremeter.CubicFootMinutePerSquareFoots, CubicFootMinutePerSquareFootsTolerance);
            AssertEx.EqualTolerance(CubicMeterPerHourSquareMetersInOneLiterSecondPerSquareMeter, litersecondpersquaremeter.CubicMeterPerHourSquareMeters, CubicMeterPerHourSquareMetersTolerance);
            AssertEx.EqualTolerance(LiterSecondPerSquareMetersInOneLiterSecondPerSquareMeter, litersecondpersquaremeter.LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
        }
        public void Equals_SameType_IsImplemented()
        {
            var a = SpecificDischarge.FromLiterSecondPerSquareMeters(1);
            var b = SpecificDischarge.FromLiterSecondPerSquareMeters(2);

            Assert.True(a.Equals(a));
            Assert.False(a.Equals(b));
        }
        public void CompareToIsImplemented()
        {
            SpecificDischarge litersecondpersquaremeter = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            Assert.Equal(0, litersecondpersquaremeter.CompareTo(litersecondpersquaremeter));
            Assert.True(litersecondpersquaremeter.CompareTo(SpecificDischarge.Zero) > 0);
            Assert.True(SpecificDischarge.Zero.CompareTo(litersecondpersquaremeter) < 0);
        }
        public void Equals_QuantityAsObject_IsImplemented()
        {
            object a = SpecificDischarge.FromLiterSecondPerSquareMeters(1);
            object b = SpecificDischarge.FromLiterSecondPerSquareMeters(2);

            Assert.True(a.Equals(a));
            Assert.False(a.Equals(b));
            Assert.False(a.Equals((object)null));
        }
        public void ArithmeticOperators()
        {
            SpecificDischarge v = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            AssertEx.EqualTolerance(-1, -v.LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            AssertEx.EqualTolerance(2, (SpecificDischarge.FromLiterSecondPerSquareMeters(3) - v).LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            AssertEx.EqualTolerance(2, (v + v).LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            AssertEx.EqualTolerance(10, (v * 10).LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            AssertEx.EqualTolerance(10, (10 * v).LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            AssertEx.EqualTolerance(2, (SpecificDischarge.FromLiterSecondPerSquareMeters(10) / 5).LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            AssertEx.EqualTolerance(2, SpecificDischarge.FromLiterSecondPerSquareMeters(10) / SpecificDischarge.FromLiterSecondPerSquareMeters(5), LiterSecondPerSquareMetersTolerance);
        }
        public void ComparisonOperators()
        {
            SpecificDischarge oneLiterSecondPerSquareMeter  = SpecificDischarge.FromLiterSecondPerSquareMeters(1);
            SpecificDischarge twoLiterSecondPerSquareMeters = SpecificDischarge.FromLiterSecondPerSquareMeters(2);

            Assert.True(oneLiterSecondPerSquareMeter < twoLiterSecondPerSquareMeters);
            Assert.True(oneLiterSecondPerSquareMeter <= twoLiterSecondPerSquareMeters);
            Assert.True(twoLiterSecondPerSquareMeters > oneLiterSecondPerSquareMeter);
            Assert.True(twoLiterSecondPerSquareMeters >= oneLiterSecondPerSquareMeter);

            Assert.False(oneLiterSecondPerSquareMeter > twoLiterSecondPerSquareMeters);
            Assert.False(oneLiterSecondPerSquareMeter >= twoLiterSecondPerSquareMeters);
            Assert.False(twoLiterSecondPerSquareMeters < oneLiterSecondPerSquareMeter);
            Assert.False(twoLiterSecondPerSquareMeters <= oneLiterSecondPerSquareMeter);
        }
        public void From_ValueAndUnit_ReturnsQuantityWithSameValueAndUnit()
        {
            var quantity00 = SpecificDischarge.From(1, SpecificDischargeUnit.CubicFootMinutePerSquareFoot);

            AssertEx.EqualTolerance(1, quantity00.CubicFootMinutePerSquareFoots, CubicFootMinutePerSquareFootsTolerance);
            Assert.Equal(SpecificDischargeUnit.CubicFootMinutePerSquareFoot, quantity00.Unit);

            var quantity01 = SpecificDischarge.From(1, SpecificDischargeUnit.CubicMeterPerHourSquareMeter);

            AssertEx.EqualTolerance(1, quantity01.CubicMeterPerHourSquareMeters, CubicMeterPerHourSquareMetersTolerance);
            Assert.Equal(SpecificDischargeUnit.CubicMeterPerHourSquareMeter, quantity01.Unit);

            var quantity02 = SpecificDischarge.From(1, SpecificDischargeUnit.LiterSecondPerSquareMeter);

            AssertEx.EqualTolerance(1, quantity02.LiterSecondPerSquareMeters, LiterSecondPerSquareMetersTolerance);
            Assert.Equal(SpecificDischargeUnit.LiterSecondPerSquareMeter, quantity02.Unit);
        }
        public void EqualityOperators()
        {
            var a = SpecificDischarge.FromLiterSecondPerSquareMeters(1);
            var b = SpecificDischarge.FromLiterSecondPerSquareMeters(2);

            // ReSharper disable EqualExpressionComparison

            Assert.True(a == a);
            Assert.False(a != a);

            Assert.True(a != b);
            Assert.False(a == b);

            Assert.False(a == null);
            Assert.False(null == a);

// ReSharper restore EqualExpressionComparison
        }
        public void SpecificDischarge_QuantityInfo_ReturnsQuantityInfoDescribingQuantity()
        {
            var quantity = new SpecificDischarge(1, SpecificDischargeUnit.LiterSecondPerSquareMeter);

            QuantityInfo <SpecificDischargeUnit> quantityInfo = quantity.QuantityInfo;

            Assert.Equal(SpecificDischarge.Zero, quantityInfo.Zero);
            Assert.Equal("SpecificDischarge", quantityInfo.Name);
            Assert.Equal(QuantityType.SpecificDischarge, quantityInfo.QuantityType);

            var units     = EnumUtils.GetEnumValues <SpecificDischargeUnit>().Except(new[] { SpecificDischargeUnit.Undefined }).ToArray();
            var unitNames = units.Select(x => x.ToString());

            // Obsolete members
#pragma warning disable 618
            Assert.Equal(units, quantityInfo.Units);
            Assert.Equal(unitNames, quantityInfo.UnitNames);
#pragma warning restore 618
        }
        public void ToUnit()
        {
            var litersecondpersquaremeter = SpecificDischarge.FromLiterSecondPerSquareMeters(1);

            var cubicfootminutepersquarefootQuantity = litersecondpersquaremeter.ToUnit(SpecificDischargeUnit.CubicFootMinutePerSquareFoot);

            AssertEx.EqualTolerance(CubicFootMinutePerSquareFootsInOneLiterSecondPerSquareMeter, (double)cubicfootminutepersquarefootQuantity.Value, CubicFootMinutePerSquareFootsTolerance);
            Assert.Equal(SpecificDischargeUnit.CubicFootMinutePerSquareFoot, cubicfootminutepersquarefootQuantity.Unit);

            var cubicmeterperhoursquaremeterQuantity = litersecondpersquaremeter.ToUnit(SpecificDischargeUnit.CubicMeterPerHourSquareMeter);

            AssertEx.EqualTolerance(CubicMeterPerHourSquareMetersInOneLiterSecondPerSquareMeter, (double)cubicmeterperhoursquaremeterQuantity.Value, CubicMeterPerHourSquareMetersTolerance);
            Assert.Equal(SpecificDischargeUnit.CubicMeterPerHourSquareMeter, cubicmeterperhoursquaremeterQuantity.Unit);

            var litersecondpersquaremeterQuantity = litersecondpersquaremeter.ToUnit(SpecificDischargeUnit.LiterSecondPerSquareMeter);

            AssertEx.EqualTolerance(LiterSecondPerSquareMetersInOneLiterSecondPerSquareMeter, (double)litersecondpersquaremeterQuantity.Value, LiterSecondPerSquareMetersTolerance);
            Assert.Equal(SpecificDischargeUnit.LiterSecondPerSquareMeter, litersecondpersquaremeterQuantity.Unit);
        }
        public void ToString_NullProvider_EqualsCurrentUICulture()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(quantity.ToString(CultureInfo.CurrentUICulture, "g"), quantity.ToString(null, "g"));
        }
        public void NegationOperator_ReturnsQuantity_WithNegatedValue(double value)
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(value);

            Assert.Equal(SpecificDischarge.FromLiterSecondPerSquareMeters(-value), -quantity);
        }
        public void GetHashCode_Equals()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(new { SpecificDischarge.QuantityType, quantity.Value, quantity.Unit }.GetHashCode(), quantity.GetHashCode());
        }
        public void Convert_ChangeType_InvalidType_ThrowsInvalidCastException()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Throws <InvalidCastException>(() => Convert.ChangeType(quantity, typeof(QuantityFormatter)));
        }
        public void Convert_ChangeType_BaseDimensions_EqualsBaseDimensions()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(SpecificDischarge.BaseDimensions, Convert.ChangeType(quantity, typeof(BaseDimensions)));
        }
        public void Convert_ChangeType_QuantityType_EqualsQuantityType()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(QuantityType.SpecificDischarge, Convert.ChangeType(quantity, typeof(QuantityType)));
        }
        public void Convert_ChangeType_UnitType_EqualsUnit()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(quantity.Unit, Convert.ChangeType(quantity, typeof(SpecificDischargeUnit)));
        }
        public void Convert_ChangeType_SelfType_EqualsSelf()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(quantity, Convert.ChangeType(quantity, typeof(SpecificDischarge)));
        }
        public void Convert_ToUInt64_EqualsValueAsSameType()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal((ulong)quantity.Value, Convert.ToUInt64(quantity));
        }
        public void Convert_ToString_EqualsToString()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal(quantity.ToString(), Convert.ToString(quantity));
        }
Пример #25
0
 public void NumberToCubicMeterPerHourSquareMetersTest() =>
 Assert.Equal(SpecificDischarge.FromCubicMeterPerHourSquareMeters(2), 2.CubicMeterPerHourSquareMeters());
        public void ToString_NullArgs_ThrowsArgumentNullException()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Throws <ArgumentNullException>(() => quantity.ToString(null, "g", null));
        }
Пример #27
0
 public void NumberToCubicFootMinutePerSquareFootsTest() =>
 Assert.Equal(SpecificDischarge.FromCubicFootMinutePerSquareFoots(2), 2.CubicFootMinutePerSquareFoots());
        public void Convert_ToDateTime_ThrowsInvalidCastException()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Throws <InvalidCastException>(() => Convert.ToDateTime(quantity));
        }
Пример #29
0
 public void NumberToLiterSecondPerSquareMetersTest() =>
 Assert.Equal(SpecificDischarge.FromLiterSecondPerSquareMeters(2), 2.LiterSecondPerSquareMeters());
        public void Convert_ToSingle_EqualsValueAsSameType()
        {
            var quantity = SpecificDischarge.FromLiterSecondPerSquareMeters(1.0);

            Assert.Equal((float)quantity.Value, Convert.ToSingle(quantity));
        }