public void EqualsIsImplemented() { ElectricConductance v = ElectricConductance.FromSiemens(1); Assert.True(v.Equals(ElectricConductance.FromSiemens(1), ElectricConductance.FromSiemens(SiemensTolerance))); Assert.False(v.Equals(ElectricConductance.Zero, ElectricConductance.FromSiemens(SiemensTolerance))); }
public void Equals_RelativeTolerance_IsImplemented() { var v = ElectricConductance.FromSiemens(1); Assert.True(v.Equals(ElectricConductance.FromSiemens(1), SiemensTolerance, ComparisonType.Relative)); Assert.False(v.Equals(ElectricConductance.Zero, SiemensTolerance, ComparisonType.Relative)); }
public void DefaultCtor_ReturnsQuantityWithZeroValueAndBaseUnit() { var quantity = new ElectricConductance(); Assert.Equal(0, quantity.Value); Assert.Equal(ElectricConductanceUnit.Siemens, quantity.Unit); }
public void Ctor_WithInfinityValue_CreateQuantityAndAffectInfinityValue() { var positiveInfinityQuantity = new ElectricConductance(double.PositiveInfinity, ElectricConductanceUnit.Siemens); var negativeInfinityQuantity = new ElectricConductance(double.NegativeInfinity, ElectricConductanceUnit.Siemens); Assert.True(double.IsPositiveInfinity(positiveInfinityQuantity.Value)); Assert.True(double.IsNegativeInfinity(negativeInfinityQuantity.Value)); }
public void As() { var siemens = ElectricConductance.FromSiemens(1); AssertEx.EqualTolerance(MicrosiemensInOneSiemens, siemens.As(ElectricConductanceUnit.Microsiemens), MicrosiemensTolerance); AssertEx.EqualTolerance(MillisiemensInOneSiemens, siemens.As(ElectricConductanceUnit.Millisiemens), MillisiemensTolerance); AssertEx.EqualTolerance(SiemensInOneSiemens, siemens.As(ElectricConductanceUnit.Siemens), SiemensTolerance); }
public void CompareToIsImplemented() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); Assert.Equal(0, siemens.CompareTo(siemens)); Assert.True(siemens.CompareTo(ElectricConductance.Zero) > 0); Assert.True(ElectricConductance.Zero.CompareTo(siemens) < 0); }
public void SiemensToElectricConductanceUnits() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); AssertEx.EqualTolerance(MicrosiemensInOneSiemens, siemens.Microsiemens, MicrosiemensTolerance); AssertEx.EqualTolerance(MillisiemensInOneSiemens, siemens.Millisiemens, MillisiemensTolerance); AssertEx.EqualTolerance(SiemensInOneSiemens, siemens.Siemens, SiemensTolerance); }
public void Equals_SameType_IsImplemented() { var a = ElectricConductance.FromSiemens(1); var b = ElectricConductance.FromSiemens(2); Assert.True(a.Equals(a)); Assert.False(a.Equals(b)); }
public void FromSiemens_WithInfinityValue_CreateQuantityAndAffectInfinityValue() { var positiveInfinityQuantity = ElectricConductance.FromSiemens(double.PositiveInfinity); var negativeInfinityQuantity = ElectricConductance.FromSiemens(double.NegativeInfinity); Assert.True(double.IsPositiveInfinity(positiveInfinityQuantity.Value)); Assert.True(double.IsNegativeInfinity(negativeInfinityQuantity.Value)); }
public void ConversionRoundTrip() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); AssertEx.EqualTolerance(1, ElectricConductance.FromMicrosiemens(siemens.Microsiemens).Siemens, MicrosiemensTolerance); AssertEx.EqualTolerance(1, ElectricConductance.FromMillisiemens(siemens.Millisiemens).Siemens, MillisiemensTolerance); AssertEx.EqualTolerance(1, ElectricConductance.FromSiemens(siemens.Siemens).Siemens, SiemensTolerance); }
public void Equals_QuantityAsObject_IsImplemented() { object a = ElectricConductance.FromSiemens(1); object b = ElectricConductance.FromSiemens(2); Assert.True(a.Equals(a)); Assert.False(a.Equals(b)); Assert.False(a.Equals((object)null)); }
public void To_UnitSystem_ThrowsArgumentExceptionIfNotSupported() { var siemens = ElectricConductance.FromSiemens(1); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.SI)); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.CGS)); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.BI)); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.EE)); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.USC)); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.FPS)); Assert.Throws <ArgumentException>(() => siemens.ToUnit(UnitSystem.Astronomical)); }
public void ArithmeticOperators() { ElectricConductance v = ElectricConductance.FromSiemens(1); AssertEx.EqualTolerance(-1, -v.Siemens, SiemensTolerance); AssertEx.EqualTolerance(2, (ElectricConductance.FromSiemens(3) - v).Siemens, SiemensTolerance); AssertEx.EqualTolerance(2, (v + v).Siemens, SiemensTolerance); AssertEx.EqualTolerance(10, (v * 10).Siemens, SiemensTolerance); AssertEx.EqualTolerance(10, (10 * v).Siemens, SiemensTolerance); AssertEx.EqualTolerance(2, (ElectricConductance.FromSiemens(10) / 5).Siemens, SiemensTolerance); AssertEx.EqualTolerance(2, ElectricConductance.FromSiemens(10) / ElectricConductance.FromSiemens(5), SiemensTolerance); }
public void EqualityOperators() { ElectricConductance a = ElectricConductance.FromSiemens(1); ElectricConductance b = ElectricConductance.FromSiemens(2); // ReSharper disable EqualExpressionComparison Assert.True(a == a); Assert.True(a != b); Assert.False(a == b); Assert.False(a != a); // ReSharper restore EqualExpressionComparison }
public void ComparisonOperators() { ElectricConductance oneSiemens = ElectricConductance.FromSiemens(1); ElectricConductance twoSiemens = ElectricConductance.FromSiemens(2); Assert.True(oneSiemens < twoSiemens); Assert.True(oneSiemens <= twoSiemens); Assert.True(twoSiemens > oneSiemens); Assert.True(twoSiemens >= oneSiemens); Assert.False(oneSiemens > twoSiemens); Assert.False(oneSiemens >= twoSiemens); Assert.False(twoSiemens < oneSiemens); Assert.False(twoSiemens <= oneSiemens); }
public void As_SIUnitSystem_ThrowsArgumentExceptionIfNotSupported() { var quantity = new ElectricConductance(value: 1, unit: ElectricConductance.BaseUnit); Func <object> AsWithSIUnitSystem = () => quantity.As(UnitSystem.SI); if (SupportsSIUnitSystem) { var value = (decimal)AsWithSIUnitSystem(); Assert.Equal(1, value); } else { Assert.Throws <ArgumentException>(AsWithSIUnitSystem); } }
public void ElectricConductance_QuantityInfo_ReturnsQuantityInfoDescribingQuantity() { var quantity = new ElectricConductance(1, ElectricConductanceUnit.Siemens); QuantityInfo <ElectricConductanceUnit> quantityInfo = quantity.QuantityInfo; Assert.Equal(ElectricConductance.Zero, quantityInfo.Zero); Assert.Equal("ElectricConductance", quantityInfo.Name); Assert.Equal(QuantityType.ElectricConductance, quantityInfo.QuantityType); var units = EnumUtils.GetEnumValues <ElectricConductanceUnit>().Except(new[] { ElectricConductanceUnit.Undefined }).ToArray(); var unitNames = units.Select(x => x.ToString()); // Obsolete members Assert.Equal(units, quantityInfo.Units); Assert.Equal(unitNames, quantityInfo.UnitNames); }
public void From_ValueAndUnit_ReturnsQuantityWithSameValueAndUnit() { var quantity00 = ElectricConductance.From(1, ElectricConductanceUnit.Microsiemens); AssertEx.EqualTolerance(1, quantity00.Microsiemens, MicrosiemensTolerance); Assert.Equal(ElectricConductanceUnit.Microsiemens, quantity00.Unit); var quantity01 = ElectricConductance.From(1, ElectricConductanceUnit.Millisiemens); AssertEx.EqualTolerance(1, quantity01.Millisiemens, MillisiemensTolerance); Assert.Equal(ElectricConductanceUnit.Millisiemens, quantity01.Unit); var quantity02 = ElectricConductance.From(1, ElectricConductanceUnit.Siemens); AssertEx.EqualTolerance(1, quantity02.Siemens, SiemensTolerance); Assert.Equal(ElectricConductanceUnit.Siemens, quantity02.Unit); }
public void ToUnit() { var siemens = ElectricConductance.FromSiemens(1); var microsiemensQuantity = siemens.ToUnit(ElectricConductanceUnit.Microsiemens); AssertEx.EqualTolerance(MicrosiemensInOneSiemens, (double)microsiemensQuantity.Value, MicrosiemensTolerance); Assert.Equal(ElectricConductanceUnit.Microsiemens, microsiemensQuantity.Unit); var millisiemensQuantity = siemens.ToUnit(ElectricConductanceUnit.Millisiemens); AssertEx.EqualTolerance(MillisiemensInOneSiemens, (double)millisiemensQuantity.Value, MillisiemensTolerance); Assert.Equal(ElectricConductanceUnit.Millisiemens, millisiemensQuantity.Unit); var siemensQuantity = siemens.ToUnit(ElectricConductanceUnit.Siemens); AssertEx.EqualTolerance(SiemensInOneSiemens, (double)siemensQuantity.Value, SiemensTolerance); Assert.Equal(ElectricConductanceUnit.Siemens, siemensQuantity.Unit); }
public void EqualityOperators() { var a = ElectricConductance.FromSiemens(1); var b = ElectricConductance.FromSiemens(2); #pragma warning disable CS8073 // 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 #pragma warning restore CS8073 }
public void EqualsReturnsFalseOnNull() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); Assert.False(siemens.Equals(null)); }
public void EqualsReturnsFalseOnTypeMismatch() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); Assert.False(siemens.Equals(new object())); }
public void CompareToThrowsOnNull() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); Assert.Throws <ArgumentNullException>(() => siemens.CompareTo(null)); }
public void GetHashCode_Equals() { var quantity = ElectricConductance.FromSiemens(1.0); Assert.Equal(new { ElectricConductance.QuantityType, quantity.Value, quantity.Unit }.GetHashCode(), quantity.GetHashCode()); }
public void Convert_ChangeType_QuantityType_EqualsQuantityType() { var quantity = ElectricConductance.FromSiemens(1.0); Assert.Equal(QuantityType.ElectricConductance, Convert.ChangeType(quantity, typeof(QuantityType))); }
public void Convert_ChangeType_BaseDimensions_EqualsBaseDimensions() { var quantity = ElectricConductance.FromSiemens(1.0); Assert.Equal(ElectricConductance.BaseDimensions, Convert.ChangeType(quantity, typeof(BaseDimensions))); }
public void NegationOperator_ReturnsQuantity_WithNegatedValue(decimal value) { var quantity = ElectricConductance.FromSiemens(value); Assert.Equal(ElectricConductance.FromSiemens(-value), -quantity); }
public void FromValueAndUnit() { AssertEx.EqualTolerance(1, ElectricConductance.From(1, ElectricConductanceUnit.Microsiemens).Microsiemens, MicrosiemensTolerance); AssertEx.EqualTolerance(1, ElectricConductance.From(1, ElectricConductanceUnit.Millisiemens).Millisiemens, MillisiemensTolerance); AssertEx.EqualTolerance(1, ElectricConductance.From(1, ElectricConductanceUnit.Siemens).Siemens, SiemensTolerance); }
public void CompareToThrowsOnTypeMismatch() { ElectricConductance siemens = ElectricConductance.FromSiemens(1); Assert.Throws <ArgumentException>(() => siemens.CompareTo(new object())); }
public void Convert_ChangeType_InvalidType_ThrowsInvalidCastException() { var quantity = ElectricConductance.FromSiemens(1.0); Assert.Throws <InvalidCastException>(() => Convert.ChangeType(quantity, typeof(QuantityFormatter))); }