public void From_ValueAndUnit_ReturnsQuantityWithSameValueAndUnit() { var quantity00 = IonDose.From(1, IonDoseUnit.CoulombPerKilogramm); AssertEx.EqualTolerance(1, quantity00.CoulombPerKilogramms, CoulombPerKilogrammsTolerance); Assert.Equal(IonDoseUnit.CoulombPerKilogramm, quantity00.Unit); }
public void DefaultCtor_ReturnsQuantityWithZeroValueAndBaseUnit() { var quantity = new IonDose(); Assert.Equal(0, quantity.Value); Assert.Equal(IonDoseUnit.CoulombPerKilogramm, quantity.Unit); }
public void Equals_RelativeTolerance_IsImplemented() { var v = IonDose.FromCoulombPerKilogramms(1); Assert.True(v.Equals(IonDose.FromCoulombPerKilogramms(1), CoulombPerKilogrammsTolerance, ComparisonType.Relative)); Assert.False(v.Equals(IonDose.Zero, CoulombPerKilogrammsTolerance, ComparisonType.Relative)); }
public void Equals_SameType_IsImplemented() { var a = IonDose.FromCoulombPerKilogramms(1); var b = IonDose.FromCoulombPerKilogramms(2); Assert.True(a.Equals(a)); Assert.False(a.Equals(b)); }
public void CompareToIsImplemented() { IonDose coulombperkilogramm = IonDose.FromCoulombPerKilogramms(1); Assert.Equal(0, coulombperkilogramm.CompareTo(coulombperkilogramm)); Assert.True(coulombperkilogramm.CompareTo(IonDose.Zero) > 0); Assert.True(IonDose.Zero.CompareTo(coulombperkilogramm) < 0); }
public void ToUnit() { var coulombperkilogramm = IonDose.FromCoulombPerKilogramms(1); var coulombperkilogrammQuantity = coulombperkilogramm.ToUnit(IonDoseUnit.CoulombPerKilogramm); AssertEx.EqualTolerance(CoulombPerKilogrammsInOneCoulombPerKilogramm, (double)coulombperkilogrammQuantity.Value, CoulombPerKilogrammsTolerance); Assert.Equal(IonDoseUnit.CoulombPerKilogramm, coulombperkilogrammQuantity.Unit); }
public void Equals_QuantityAsObject_IsImplemented() { object a = IonDose.FromCoulombPerKilogramms(1); object b = IonDose.FromCoulombPerKilogramms(2); Assert.True(a.Equals(a)); Assert.False(a.Equals(b)); Assert.False(a.Equals((object)null)); }
public void ArithmeticOperators() { IonDose v = IonDose.FromCoulombPerKilogramms(1); AssertEx.EqualTolerance(-1, -v.CoulombPerKilogramms, CoulombPerKilogrammsTolerance); AssertEx.EqualTolerance(2, (IonDose.FromCoulombPerKilogramms(3) - v).CoulombPerKilogramms, CoulombPerKilogrammsTolerance); AssertEx.EqualTolerance(2, (v + v).CoulombPerKilogramms, CoulombPerKilogrammsTolerance); AssertEx.EqualTolerance(10, (v * 10).CoulombPerKilogramms, CoulombPerKilogrammsTolerance); AssertEx.EqualTolerance(10, (10 * v).CoulombPerKilogramms, CoulombPerKilogrammsTolerance); AssertEx.EqualTolerance(2, (IonDose.FromCoulombPerKilogramms(10) / 5).CoulombPerKilogramms, CoulombPerKilogrammsTolerance); AssertEx.EqualTolerance(2, IonDose.FromCoulombPerKilogramms(10) / IonDose.FromCoulombPerKilogramms(5), CoulombPerKilogrammsTolerance); }
public void ComparisonOperators() { IonDose oneCoulombPerKilogramm = IonDose.FromCoulombPerKilogramms(1); IonDose twoCoulombPerKilogramms = IonDose.FromCoulombPerKilogramms(2); Assert.True(oneCoulombPerKilogramm < twoCoulombPerKilogramms); Assert.True(oneCoulombPerKilogramm <= twoCoulombPerKilogramms); Assert.True(twoCoulombPerKilogramms > oneCoulombPerKilogramm); Assert.True(twoCoulombPerKilogramms >= oneCoulombPerKilogramm); Assert.False(oneCoulombPerKilogramm > twoCoulombPerKilogramms); Assert.False(oneCoulombPerKilogramm >= twoCoulombPerKilogramms); Assert.False(twoCoulombPerKilogramms < oneCoulombPerKilogramm); Assert.False(twoCoulombPerKilogramms <= oneCoulombPerKilogramm); }
public void EqualityOperators() { var a = IonDose.FromCoulombPerKilogramms(1); var b = IonDose.FromCoulombPerKilogramms(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 IonDose_QuantityInfo_ReturnsQuantityInfoDescribingQuantity() { var quantity = new IonDose(1, IonDoseUnit.CoulombPerKilogramm); QuantityInfo <IonDoseUnit> quantityInfo = quantity.QuantityInfo; Assert.Equal(IonDose.Zero, quantityInfo.Zero); Assert.Equal("IonDose", quantityInfo.Name); Assert.Equal(QuantityType.IonDose, quantityInfo.QuantityType); var units = EnumUtils.GetEnumValues <IonDoseUnit>().Except(new[] { IonDoseUnit.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 GetHashCode_Equals() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(new { IonDose.QuantityType, quantity.Value, quantity.Unit }.GetHashCode(), quantity.GetHashCode()); }
public void Convert_ChangeType_QuantityType_EqualsQuantityType() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(QuantityType.IonDose, Convert.ChangeType(quantity, typeof(QuantityType))); }
public void Convert_ChangeType_SelfType_EqualsSelf() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(quantity, Convert.ChangeType(quantity, typeof(IonDose))); }
public void Convert_ToString_EqualsToString() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(quantity.ToString(), Convert.ToString(quantity)); }
public void Convert_ToInt16_EqualsValueAsSameType() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal((short)quantity.Value, Convert.ToInt16(quantity)); }
public void Convert_ToSingle_EqualsValueAsSameType() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal((float)quantity.Value, Convert.ToSingle(quantity)); }
public void Equals_NegativeRelativeTolerance_ThrowsArgumentOutOfRangeException() { var v = IonDose.FromCoulombPerKilogramms(1); Assert.Throws <ArgumentOutOfRangeException>(() => v.Equals(IonDose.FromCoulombPerKilogramms(1), -1, ComparisonType.Relative)); }
public void Convert_ToUInt64_EqualsValueAsSameType() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal((ulong)quantity.Value, Convert.ToUInt64(quantity)); }
public void EqualsReturnsFalseOnTypeMismatch() { IonDose coulombperkilogramm = IonDose.FromCoulombPerKilogramms(1); Assert.False(coulombperkilogramm.Equals(new object())); }
public void Convert_ChangeType_UnitType_EqualsUnit() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(quantity.Unit, Convert.ChangeType(quantity, typeof(IonDoseUnit))); }
public void EqualsReturnsFalseOnNull() { IonDose coulombperkilogramm = IonDose.FromCoulombPerKilogramms(1); Assert.False(coulombperkilogramm.Equals(null)); }
public void Convert_ChangeType_BaseDimensions_EqualsBaseDimensions() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(IonDose.BaseDimensions, Convert.ChangeType(quantity, typeof(BaseDimensions))); }
public void ToString_NullArgs_ThrowsArgumentNullException() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Throws <ArgumentNullException>(() => quantity.ToString(null, "g", null)); }
public void Convert_ChangeType_InvalidType_ThrowsInvalidCastException() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Throws <InvalidCastException>(() => Convert.ChangeType(quantity, typeof(QuantityFormatter))); }
public void ToString_NullProvider_EqualsCurrentUICulture() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal(quantity.ToString(CultureInfo.CurrentUICulture, "g"), quantity.ToString(null, "g")); }
public void NegationOperator_ReturnsQuantity_WithNegatedValue(double value) { var quantity = IonDose.FromCoulombPerKilogramms(value); Assert.Equal(IonDose.FromCoulombPerKilogramms(-value), -quantity); }
public void Convert_ToDateTime_ThrowsInvalidCastException() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Throws <InvalidCastException>(() => Convert.ToDateTime(quantity)); }
public static IonDose CoulombPerKilogramms <T>(this T value) => IonDose.FromCoulombPerKilogramms(Convert.ToDouble(value));
public void Convert_ToDecimal_EqualsValueAsSameType() { var quantity = IonDose.FromCoulombPerKilogramms(1.0); Assert.Equal((decimal)quantity.Value, Convert.ToDecimal(quantity)); }