Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions UnitsNet.Tests/CustomCode/LengthTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
// THE SOFTWARE.

using NUnit.Framework;
using UnitsNet.Units;

namespace UnitsNet.Tests.CustomCode
{
Expand Down Expand Up @@ -88,5 +89,25 @@ public void LengthTimesLengthEqualsArea()
Area area = Length.FromMeters(10)*Length.FromMeters(2);
Assert.AreEqual(area, Area.FromSquareMeters(20));
}

[Test]
public void ToStringReturnsCorrectNumberAndUnitWithDefaultUnitWhichIsMeter()
{
Length.ToStringDefaultUnit = LengthUnit.Meter;
Length meter = Length.FromMeters(5);
string meterString = meter.ToString();
Assert.AreEqual("5 m", meterString);
}

[Test]
public void ToStringReturnsCorrectNumberAndUnitWithCentimeterAsDefualtUnit()
{
LengthUnit oldUnit = Length.ToStringDefaultUnit;
Length.ToStringDefaultUnit = LengthUnit.Centimeter;
Length value = Length.From(2, LengthUnit.Centimeter);
string valueString = value.ToString();
Length.ToStringDefaultUnit = oldUnit;
Assert.AreEqual("2 cm", valueString);
}
}
}
2 changes: 2 additions & 0 deletions UnitsNet.Tests/CustomCode/VolumeTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ public class VolumeTests : VolumeTestsBase

protected override double CubicMillimetersInOneCubicMeter => 1E9;

protected override double CubicMicrometersInOneCubicMeter => 1E18;

protected override double CubicYardsInOneCubicMeter => 1.30795062;

protected override double DecilitersInOneCubicMeter => 1E4;
Expand Down
6 changes: 6 additions & 0 deletions UnitsNet.Tests/GeneratedCode/VolumeTestsBase.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ public abstract partial class VolumeTestsBase
protected abstract double CubicInchesInOneCubicMeter { get; }
protected abstract double CubicKilometersInOneCubicMeter { get; }
protected abstract double CubicMetersInOneCubicMeter { get; }
protected abstract double CubicMicrometersInOneCubicMeter { get; }
protected abstract double CubicMilesInOneCubicMeter { get; }
protected abstract double CubicMillimetersInOneCubicMeter { get; }
protected abstract double CubicYardsInOneCubicMeter { get; }
Expand All @@ -68,6 +69,7 @@ public abstract partial class VolumeTestsBase
protected virtual double CubicInchesTolerance { get { return 1e-5; } }
protected virtual double CubicKilometersTolerance { get { return 1e-5; } }
protected virtual double CubicMetersTolerance { get { return 1e-5; } }
protected virtual double CubicMicrometersTolerance { get { return 1e-5; } }
protected virtual double CubicMilesTolerance { get { return 1e-5; } }
protected virtual double CubicMillimetersTolerance { get { return 1e-5; } }
protected virtual double CubicYardsTolerance { get { return 1e-5; } }
Expand Down Expand Up @@ -97,6 +99,7 @@ public void CubicMeterToVolumeUnits()
Assert.AreEqual(CubicInchesInOneCubicMeter, cubicmeter.CubicInches, CubicInchesTolerance);
Assert.AreEqual(CubicKilometersInOneCubicMeter, cubicmeter.CubicKilometers, CubicKilometersTolerance);
Assert.AreEqual(CubicMetersInOneCubicMeter, cubicmeter.CubicMeters, CubicMetersTolerance);
Assert.AreEqual(CubicMicrometersInOneCubicMeter, cubicmeter.CubicMicrometers, CubicMicrometersTolerance);
Assert.AreEqual(CubicMilesInOneCubicMeter, cubicmeter.CubicMiles, CubicMilesTolerance);
Assert.AreEqual(CubicMillimetersInOneCubicMeter, cubicmeter.CubicMillimeters, CubicMillimetersTolerance);
Assert.AreEqual(CubicYardsInOneCubicMeter, cubicmeter.CubicYards, CubicYardsTolerance);
Expand Down Expand Up @@ -125,6 +128,7 @@ public void FromValueAndUnit()
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicInch).CubicInches, CubicInchesTolerance);
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicKilometer).CubicKilometers, CubicKilometersTolerance);
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicMeter).CubicMeters, CubicMetersTolerance);
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicMicrometer).CubicMicrometers, CubicMicrometersTolerance);
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicMile).CubicMiles, CubicMilesTolerance);
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicMillimeter).CubicMillimeters, CubicMillimetersTolerance);
Assert.AreEqual(1, Volume.From(1, VolumeUnit.CubicYard).CubicYards, CubicYardsTolerance);
Expand Down Expand Up @@ -154,6 +158,7 @@ public void As()
Assert.AreEqual(CubicInchesInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicInch), CubicInchesTolerance);
Assert.AreEqual(CubicKilometersInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicKilometer), CubicKilometersTolerance);
Assert.AreEqual(CubicMetersInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicMeter), CubicMetersTolerance);
Assert.AreEqual(CubicMicrometersInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicMicrometer), CubicMicrometersTolerance);
Assert.AreEqual(CubicMilesInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicMile), CubicMilesTolerance);
Assert.AreEqual(CubicMillimetersInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicMillimeter), CubicMillimetersTolerance);
Assert.AreEqual(CubicYardsInOneCubicMeter, cubicmeter.As(VolumeUnit.CubicYard), CubicYardsTolerance);
Expand Down Expand Up @@ -183,6 +188,7 @@ public void ConversionRoundTrip()
Assert.AreEqual(1, Volume.FromCubicInches(cubicmeter.CubicInches).CubicMeters, CubicInchesTolerance);
Assert.AreEqual(1, Volume.FromCubicKilometers(cubicmeter.CubicKilometers).CubicMeters, CubicKilometersTolerance);
Assert.AreEqual(1, Volume.FromCubicMeters(cubicmeter.CubicMeters).CubicMeters, CubicMetersTolerance);
Assert.AreEqual(1, Volume.FromCubicMicrometers(cubicmeter.CubicMicrometers).CubicMeters, CubicMicrometersTolerance);
Assert.AreEqual(1, Volume.FromCubicMiles(cubicmeter.CubicMiles).CubicMeters, CubicMilesTolerance);
Assert.AreEqual(1, Volume.FromCubicMillimeters(cubicmeter.CubicMillimeters).CubicMeters, CubicMillimetersTolerance);
Assert.AreEqual(1, Volume.FromCubicYards(cubicmeter.CubicYards).CubicMeters, CubicYardsTolerance);
Expand Down
1 change: 1 addition & 0 deletions UnitsNet/CustomCode/UnitClasses/Length.extra.cs
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
// THE SOFTWARE.

using System;
using System.Diagnostics;
using System.Globalization;
using UnitsNet.Units;

Expand Down
1 change: 1 addition & 0 deletions UnitsNet/GeneratedCode/Enums/VolumeUnit.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ public enum VolumeUnit
CubicInch,
CubicKilometer,
CubicMeter,
CubicMicrometer,
CubicMile,
CubicMillimeter,
CubicYard,
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Acceleration.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -473,13 +473,18 @@ public static AccelerationUnit ParseUnit(string str, IFormatProvider formatProvi

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is MeterPerSecondSquared
/// </summary>
public static AccelerationUnit ToStringDefaultUnit { get; set; } = AccelerationUnit.MeterPerSecondSquared;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(AccelerationUnit.MeterPerSecondSquared);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/AmplitudeRatio.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -401,13 +401,18 @@ public static AmplitudeRatioUnit ParseUnit(string str, IFormatProvider formatPro

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is DecibelVolt
/// </summary>
public static AmplitudeRatioUnit ToStringDefaultUnit { get; set; } = AmplitudeRatioUnit.DecibelVolt;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(AmplitudeRatioUnit.DecibelVolt);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Angle.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -533,13 +533,18 @@ public static AngleUnit ParseUnit(string str, IFormatProvider formatProvider = n

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Degree
/// </summary>
public static AngleUnit ToStringDefaultUnit { get; set; } = AngleUnit.Degree;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(AngleUnit.Degree);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Area.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -533,13 +533,18 @@ public static AreaUnit ParseUnit(string str, IFormatProvider formatProvider = nu

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is SquareMeter
/// </summary>
public static AreaUnit ToStringDefaultUnit { get; set; } = AreaUnit.SquareMeter;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(AreaUnit.SquareMeter);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Density.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -533,13 +533,18 @@ public static DensityUnit ParseUnit(string str, IFormatProvider formatProvider =

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is KilogramPerCubicMeter
/// </summary>
public static DensityUnit ToStringDefaultUnit { get; set; } = DensityUnit.KilogramPerCubicMeter;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(DensityUnit.KilogramPerCubicMeter);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Duration.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -533,13 +533,18 @@ public static DurationUnit ParseUnit(string str, IFormatProvider formatProvider

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Second
/// </summary>
public static DurationUnit ToStringDefaultUnit { get; set; } = DurationUnit.Second;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(DurationUnit.Second);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/ElectricCurrent.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -453,13 +453,18 @@ public static ElectricCurrentUnit ParseUnit(string str, IFormatProvider formatPr

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Ampere
/// </summary>
public static ElectricCurrentUnit ToStringDefaultUnit { get; set; } = ElectricCurrentUnit.Ampere;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(ElectricCurrentUnit.Ampere);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/ElectricPotential.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -433,13 +433,18 @@ public static ElectricPotentialUnit ParseUnit(string str, IFormatProvider format

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Volt
/// </summary>
public static ElectricPotentialUnit ToStringDefaultUnit { get; set; } = ElectricPotentialUnit.Volt;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(ElectricPotentialUnit.Volt);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/ElectricResistance.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -393,13 +393,18 @@ public static ElectricResistanceUnit ParseUnit(string str, IFormatProvider forma

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Ohm
/// </summary>
public static ElectricResistanceUnit ToStringDefaultUnit { get; set; } = ElectricResistanceUnit.Ohm;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(ElectricResistanceUnit.Ohm);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Energy.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -593,13 +593,18 @@ public static EnergyUnit ParseUnit(string str, IFormatProvider formatProvider =

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Joule
/// </summary>
public static EnergyUnit ToStringDefaultUnit { get; set; } = EnergyUnit.Joule;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(EnergyUnit.Joule);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Flow.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -453,13 +453,18 @@ public static FlowUnit ParseUnit(string str, IFormatProvider formatProvider = nu

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is CubicMeterPerSecond
/// </summary>
public static FlowUnit ToStringDefaultUnit { get; set; } = FlowUnit.CubicMeterPerSecond;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(FlowUnit.CubicMeterPerSecond);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Force.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -493,13 +493,18 @@ public static ForceUnit ParseUnit(string str, IFormatProvider formatProvider = n

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Newton
/// </summary>
public static ForceUnit ToStringDefaultUnit { get; set; } = ForceUnit.Newton;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(ForceUnit.Newton);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/ForceChangeRate.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -353,13 +353,18 @@ public static ForceChangeRateUnit ParseUnit(string str, IFormatProvider formatPr

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is NewtonPerSecond
/// </summary>
public static ForceChangeRateUnit ToStringDefaultUnit { get; set; } = ForceChangeRateUnit.NewtonPerSecond;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(ForceChangeRateUnit.NewtonPerSecond);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
7 changes: 6 additions & 1 deletion UnitsNet/GeneratedCode/UnitClasses/Frequency.g.cs
Original file line number Diff line number Diff line change
Expand Up @@ -493,13 +493,18 @@ public static FrequencyUnit ParseUnit(string str, IFormatProvider formatProvider

#endregion

/// <summary>
/// Set the default unit used by ToString(). Default is Hertz
/// </summary>
public static FrequencyUnit ToStringDefaultUnit { get; set; } = FrequencyUnit.Hertz;

/// <summary>
/// Get default string representation of value and unit.
/// </summary>
/// <returns>String representation.</returns>
public override string ToString()
{
return ToString(FrequencyUnit.Hertz);
return ToString(ToStringDefaultUnit);
}

/// <summary>
Expand Down
Loading