From c52133c27ce90e399a4dfa1f0d21f9cd812d641e Mon Sep 17 00:00:00 2001 From: Marco Todisco Date: Fri, 28 Feb 2020 08:51:48 +0100 Subject: [PATCH] Added Chain measure unit to Length --- Common/UnitDefinitions/Length.json | 15 ++ .../NumberToLengthExtensionsTest.g.cs | 4 + .../NumberToLengthExtensions.g.cs | 4 + UnitsNet.Tests/CustomCode/LengthTests.cs | 2 + .../TestsBase/LengthTestsBase.g.cs | 195 ++++++++++-------- .../GeneratedCode/Quantities/Length.g.cs | 17 ++ .../GeneratedCode/UnitAbbreviationsCache.g.cs | 1 + .../GeneratedCode/Units/LengthUnit.g.cs | 1 + UnitsNet/GeneratedCode/Quantities/Length.g.cs | 17 ++ .../GeneratedCode/UnitAbbreviationsCache.g.cs | 1 + UnitsNet/GeneratedCode/UnitConverter.g.cs | 2 + UnitsNet/GeneratedCode/Units/LengthUnit.g.cs | 1 + 12 files changed, 170 insertions(+), 90 deletions(-) diff --git a/Common/UnitDefinitions/Length.json b/Common/UnitDefinitions/Length.json index 8135c65753..66889554e2 100644 --- a/Common/UnitDefinitions/Length.json +++ b/Common/UnitDefinitions/Length.json @@ -351,6 +351,21 @@ "Abbreviations": [ "R⊙" ] } ] + }, + { + "SingularName": "Chain", + "PluralName": "Chains", + "BaseUnits": { + "L": "Chain" + }, + "FromUnitToBaseFunc": "x*20.1168", + "FromBaseToUnitFunc": "x/20.1168", + "Localization": [ + { + "Culture": "en-US", + "Abbreviations": [ "ch" ] + } + ] } ] } diff --git a/UnitsNet.NumberExtensions.Tests/GeneratedCode/NumberToLengthExtensionsTest.g.cs b/UnitsNet.NumberExtensions.Tests/GeneratedCode/NumberToLengthExtensionsTest.g.cs index 9bab6a3398..0c2e369277 100644 --- a/UnitsNet.NumberExtensions.Tests/GeneratedCode/NumberToLengthExtensionsTest.g.cs +++ b/UnitsNet.NumberExtensions.Tests/GeneratedCode/NumberToLengthExtensionsTest.g.cs @@ -32,6 +32,10 @@ public void NumberToAstronomicalUnitsTest() => public void NumberToCentimetersTest() => Assert.Equal(Length.FromCentimeters(2), 2.Centimeters()); + [Fact] + public void NumberToChainsTest() => + Assert.Equal(Length.FromChains(2), 2.Chains()); + [Fact] public void NumberToDecimetersTest() => Assert.Equal(Length.FromDecimeters(2), 2.Decimeters()); diff --git a/UnitsNet.NumberExtensions/GeneratedCode/NumberToLengthExtensions.g.cs b/UnitsNet.NumberExtensions/GeneratedCode/NumberToLengthExtensions.g.cs index f9a95a740a..696ff70747 100644 --- a/UnitsNet.NumberExtensions/GeneratedCode/NumberToLengthExtensions.g.cs +++ b/UnitsNet.NumberExtensions/GeneratedCode/NumberToLengthExtensions.g.cs @@ -34,6 +34,10 @@ public static Length AstronomicalUnits(this T value) => public static Length Centimeters(this T value) => Length.FromCentimeters(Convert.ToDouble(value)); + /// + public static Length Chains(this T value) => + Length.FromChains(Convert.ToDouble(value)); + /// public static Length Decimeters(this T value) => Length.FromDecimeters(Convert.ToDouble(value)); diff --git a/UnitsNet.Tests/CustomCode/LengthTests.cs b/UnitsNet.Tests/CustomCode/LengthTests.cs index d5dc4f4d8e..19da3e8d47 100644 --- a/UnitsNet.Tests/CustomCode/LengthTests.cs +++ b/UnitsNet.Tests/CustomCode/LengthTests.cs @@ -73,6 +73,8 @@ public class LengthTests : LengthTestsBase protected override double SolarRadiusesInOneMeter => 1.43779384911791000E-09; + protected override double ChainsInOneMeter => 0.0497096953789867; + [ Fact] public void AreaTimesLengthEqualsVolume() { diff --git a/UnitsNet.Tests/GeneratedCode/TestsBase/LengthTestsBase.g.cs b/UnitsNet.Tests/GeneratedCode/TestsBase/LengthTestsBase.g.cs index a2d2155d1d..dda78a5543 100644 --- a/UnitsNet.Tests/GeneratedCode/TestsBase/LengthTestsBase.g.cs +++ b/UnitsNet.Tests/GeneratedCode/TestsBase/LengthTestsBase.g.cs @@ -38,6 +38,7 @@ public abstract partial class LengthTestsBase { protected abstract double AstronomicalUnitsInOneMeter { get; } protected abstract double CentimetersInOneMeter { get; } + protected abstract double ChainsInOneMeter { get; } protected abstract double DecimetersInOneMeter { get; } protected abstract double DtpPicasInOneMeter { get; } protected abstract double DtpPointsInOneMeter { get; } @@ -72,6 +73,7 @@ public abstract partial class LengthTestsBase // ReSharper disable VirtualMemberNeverOverriden.Global protected virtual double AstronomicalUnitsTolerance { get { return 1e-5; } } protected virtual double CentimetersTolerance { get { return 1e-5; } } + protected virtual double ChainsTolerance { get { return 1e-5; } } protected virtual double DecimetersTolerance { get { return 1e-5; } } protected virtual double DtpPicasTolerance { get { return 1e-5; } } protected virtual double DtpPointsTolerance { get { return 1e-5; } } @@ -165,6 +167,7 @@ public void MeterToLengthUnits() Length meter = Length.FromMeters(1); AssertEx.EqualTolerance(AstronomicalUnitsInOneMeter, meter.AstronomicalUnits, AstronomicalUnitsTolerance); AssertEx.EqualTolerance(CentimetersInOneMeter, meter.Centimeters, CentimetersTolerance); + AssertEx.EqualTolerance(ChainsInOneMeter, meter.Chains, ChainsTolerance); AssertEx.EqualTolerance(DecimetersInOneMeter, meter.Decimeters, DecimetersTolerance); AssertEx.EqualTolerance(DtpPicasInOneMeter, meter.DtpPicas, DtpPicasTolerance); AssertEx.EqualTolerance(DtpPointsInOneMeter, meter.DtpPoints, DtpPointsTolerance); @@ -208,125 +211,129 @@ public void From_ValueAndUnit_ReturnsQuantityWithSameValueAndUnit() AssertEx.EqualTolerance(1, quantity01.Centimeters, CentimetersTolerance); Assert.Equal(LengthUnit.Centimeter, quantity01.Unit); - var quantity02 = Length.From(1, LengthUnit.Decimeter); - AssertEx.EqualTolerance(1, quantity02.Decimeters, DecimetersTolerance); - Assert.Equal(LengthUnit.Decimeter, quantity02.Unit); + var quantity02 = Length.From(1, LengthUnit.Chain); + AssertEx.EqualTolerance(1, quantity02.Chains, ChainsTolerance); + Assert.Equal(LengthUnit.Chain, quantity02.Unit); - var quantity03 = Length.From(1, LengthUnit.DtpPica); - AssertEx.EqualTolerance(1, quantity03.DtpPicas, DtpPicasTolerance); - Assert.Equal(LengthUnit.DtpPica, quantity03.Unit); + var quantity03 = Length.From(1, LengthUnit.Decimeter); + AssertEx.EqualTolerance(1, quantity03.Decimeters, DecimetersTolerance); + Assert.Equal(LengthUnit.Decimeter, quantity03.Unit); - var quantity04 = Length.From(1, LengthUnit.DtpPoint); - AssertEx.EqualTolerance(1, quantity04.DtpPoints, DtpPointsTolerance); - Assert.Equal(LengthUnit.DtpPoint, quantity04.Unit); + var quantity04 = Length.From(1, LengthUnit.DtpPica); + AssertEx.EqualTolerance(1, quantity04.DtpPicas, DtpPicasTolerance); + Assert.Equal(LengthUnit.DtpPica, quantity04.Unit); - var quantity05 = Length.From(1, LengthUnit.Fathom); - AssertEx.EqualTolerance(1, quantity05.Fathoms, FathomsTolerance); - Assert.Equal(LengthUnit.Fathom, quantity05.Unit); + var quantity05 = Length.From(1, LengthUnit.DtpPoint); + AssertEx.EqualTolerance(1, quantity05.DtpPoints, DtpPointsTolerance); + Assert.Equal(LengthUnit.DtpPoint, quantity05.Unit); - var quantity06 = Length.From(1, LengthUnit.Foot); - AssertEx.EqualTolerance(1, quantity06.Feet, FeetTolerance); - Assert.Equal(LengthUnit.Foot, quantity06.Unit); + var quantity06 = Length.From(1, LengthUnit.Fathom); + AssertEx.EqualTolerance(1, quantity06.Fathoms, FathomsTolerance); + Assert.Equal(LengthUnit.Fathom, quantity06.Unit); - var quantity07 = Length.From(1, LengthUnit.Hand); - AssertEx.EqualTolerance(1, quantity07.Hands, HandsTolerance); - Assert.Equal(LengthUnit.Hand, quantity07.Unit); + var quantity07 = Length.From(1, LengthUnit.Foot); + AssertEx.EqualTolerance(1, quantity07.Feet, FeetTolerance); + Assert.Equal(LengthUnit.Foot, quantity07.Unit); - var quantity08 = Length.From(1, LengthUnit.Hectometer); - AssertEx.EqualTolerance(1, quantity08.Hectometers, HectometersTolerance); - Assert.Equal(LengthUnit.Hectometer, quantity08.Unit); + var quantity08 = Length.From(1, LengthUnit.Hand); + AssertEx.EqualTolerance(1, quantity08.Hands, HandsTolerance); + Assert.Equal(LengthUnit.Hand, quantity08.Unit); - var quantity09 = Length.From(1, LengthUnit.Inch); - AssertEx.EqualTolerance(1, quantity09.Inches, InchesTolerance); - Assert.Equal(LengthUnit.Inch, quantity09.Unit); + var quantity09 = Length.From(1, LengthUnit.Hectometer); + AssertEx.EqualTolerance(1, quantity09.Hectometers, HectometersTolerance); + Assert.Equal(LengthUnit.Hectometer, quantity09.Unit); - var quantity10 = Length.From(1, LengthUnit.KilolightYear); - AssertEx.EqualTolerance(1, quantity10.KilolightYears, KilolightYearsTolerance); - Assert.Equal(LengthUnit.KilolightYear, quantity10.Unit); + var quantity10 = Length.From(1, LengthUnit.Inch); + AssertEx.EqualTolerance(1, quantity10.Inches, InchesTolerance); + Assert.Equal(LengthUnit.Inch, quantity10.Unit); - var quantity11 = Length.From(1, LengthUnit.Kilometer); - AssertEx.EqualTolerance(1, quantity11.Kilometers, KilometersTolerance); - Assert.Equal(LengthUnit.Kilometer, quantity11.Unit); + var quantity11 = Length.From(1, LengthUnit.KilolightYear); + AssertEx.EqualTolerance(1, quantity11.KilolightYears, KilolightYearsTolerance); + Assert.Equal(LengthUnit.KilolightYear, quantity11.Unit); - var quantity12 = Length.From(1, LengthUnit.Kiloparsec); - AssertEx.EqualTolerance(1, quantity12.Kiloparsecs, KiloparsecsTolerance); - Assert.Equal(LengthUnit.Kiloparsec, quantity12.Unit); + var quantity12 = Length.From(1, LengthUnit.Kilometer); + AssertEx.EqualTolerance(1, quantity12.Kilometers, KilometersTolerance); + Assert.Equal(LengthUnit.Kilometer, quantity12.Unit); - var quantity13 = Length.From(1, LengthUnit.LightYear); - AssertEx.EqualTolerance(1, quantity13.LightYears, LightYearsTolerance); - Assert.Equal(LengthUnit.LightYear, quantity13.Unit); + var quantity13 = Length.From(1, LengthUnit.Kiloparsec); + AssertEx.EqualTolerance(1, quantity13.Kiloparsecs, KiloparsecsTolerance); + Assert.Equal(LengthUnit.Kiloparsec, quantity13.Unit); - var quantity14 = Length.From(1, LengthUnit.MegalightYear); - AssertEx.EqualTolerance(1, quantity14.MegalightYears, MegalightYearsTolerance); - Assert.Equal(LengthUnit.MegalightYear, quantity14.Unit); + var quantity14 = Length.From(1, LengthUnit.LightYear); + AssertEx.EqualTolerance(1, quantity14.LightYears, LightYearsTolerance); + Assert.Equal(LengthUnit.LightYear, quantity14.Unit); - var quantity15 = Length.From(1, LengthUnit.Megaparsec); - AssertEx.EqualTolerance(1, quantity15.Megaparsecs, MegaparsecsTolerance); - Assert.Equal(LengthUnit.Megaparsec, quantity15.Unit); + var quantity15 = Length.From(1, LengthUnit.MegalightYear); + AssertEx.EqualTolerance(1, quantity15.MegalightYears, MegalightYearsTolerance); + Assert.Equal(LengthUnit.MegalightYear, quantity15.Unit); - var quantity16 = Length.From(1, LengthUnit.Meter); - AssertEx.EqualTolerance(1, quantity16.Meters, MetersTolerance); - Assert.Equal(LengthUnit.Meter, quantity16.Unit); + var quantity16 = Length.From(1, LengthUnit.Megaparsec); + AssertEx.EqualTolerance(1, quantity16.Megaparsecs, MegaparsecsTolerance); + Assert.Equal(LengthUnit.Megaparsec, quantity16.Unit); - var quantity17 = Length.From(1, LengthUnit.Microinch); - AssertEx.EqualTolerance(1, quantity17.Microinches, MicroinchesTolerance); - Assert.Equal(LengthUnit.Microinch, quantity17.Unit); + var quantity17 = Length.From(1, LengthUnit.Meter); + AssertEx.EqualTolerance(1, quantity17.Meters, MetersTolerance); + Assert.Equal(LengthUnit.Meter, quantity17.Unit); - var quantity18 = Length.From(1, LengthUnit.Micrometer); - AssertEx.EqualTolerance(1, quantity18.Micrometers, MicrometersTolerance); - Assert.Equal(LengthUnit.Micrometer, quantity18.Unit); + var quantity18 = Length.From(1, LengthUnit.Microinch); + AssertEx.EqualTolerance(1, quantity18.Microinches, MicroinchesTolerance); + Assert.Equal(LengthUnit.Microinch, quantity18.Unit); - var quantity19 = Length.From(1, LengthUnit.Mil); - AssertEx.EqualTolerance(1, quantity19.Mils, MilsTolerance); - Assert.Equal(LengthUnit.Mil, quantity19.Unit); + var quantity19 = Length.From(1, LengthUnit.Micrometer); + AssertEx.EqualTolerance(1, quantity19.Micrometers, MicrometersTolerance); + Assert.Equal(LengthUnit.Micrometer, quantity19.Unit); - var quantity20 = Length.From(1, LengthUnit.Mile); - AssertEx.EqualTolerance(1, quantity20.Miles, MilesTolerance); - Assert.Equal(LengthUnit.Mile, quantity20.Unit); + var quantity20 = Length.From(1, LengthUnit.Mil); + AssertEx.EqualTolerance(1, quantity20.Mils, MilsTolerance); + Assert.Equal(LengthUnit.Mil, quantity20.Unit); - var quantity21 = Length.From(1, LengthUnit.Millimeter); - AssertEx.EqualTolerance(1, quantity21.Millimeters, MillimetersTolerance); - Assert.Equal(LengthUnit.Millimeter, quantity21.Unit); + var quantity21 = Length.From(1, LengthUnit.Mile); + AssertEx.EqualTolerance(1, quantity21.Miles, MilesTolerance); + Assert.Equal(LengthUnit.Mile, quantity21.Unit); - var quantity22 = Length.From(1, LengthUnit.Nanometer); - AssertEx.EqualTolerance(1, quantity22.Nanometers, NanometersTolerance); - Assert.Equal(LengthUnit.Nanometer, quantity22.Unit); + var quantity22 = Length.From(1, LengthUnit.Millimeter); + AssertEx.EqualTolerance(1, quantity22.Millimeters, MillimetersTolerance); + Assert.Equal(LengthUnit.Millimeter, quantity22.Unit); - var quantity23 = Length.From(1, LengthUnit.NauticalMile); - AssertEx.EqualTolerance(1, quantity23.NauticalMiles, NauticalMilesTolerance); - Assert.Equal(LengthUnit.NauticalMile, quantity23.Unit); + var quantity23 = Length.From(1, LengthUnit.Nanometer); + AssertEx.EqualTolerance(1, quantity23.Nanometers, NanometersTolerance); + Assert.Equal(LengthUnit.Nanometer, quantity23.Unit); - var quantity24 = Length.From(1, LengthUnit.Parsec); - AssertEx.EqualTolerance(1, quantity24.Parsecs, ParsecsTolerance); - Assert.Equal(LengthUnit.Parsec, quantity24.Unit); + var quantity24 = Length.From(1, LengthUnit.NauticalMile); + AssertEx.EqualTolerance(1, quantity24.NauticalMiles, NauticalMilesTolerance); + Assert.Equal(LengthUnit.NauticalMile, quantity24.Unit); - var quantity25 = Length.From(1, LengthUnit.PrinterPica); - AssertEx.EqualTolerance(1, quantity25.PrinterPicas, PrinterPicasTolerance); - Assert.Equal(LengthUnit.PrinterPica, quantity25.Unit); + var quantity25 = Length.From(1, LengthUnit.Parsec); + AssertEx.EqualTolerance(1, quantity25.Parsecs, ParsecsTolerance); + Assert.Equal(LengthUnit.Parsec, quantity25.Unit); - var quantity26 = Length.From(1, LengthUnit.PrinterPoint); - AssertEx.EqualTolerance(1, quantity26.PrinterPoints, PrinterPointsTolerance); - Assert.Equal(LengthUnit.PrinterPoint, quantity26.Unit); + var quantity26 = Length.From(1, LengthUnit.PrinterPica); + AssertEx.EqualTolerance(1, quantity26.PrinterPicas, PrinterPicasTolerance); + Assert.Equal(LengthUnit.PrinterPica, quantity26.Unit); - var quantity27 = Length.From(1, LengthUnit.Shackle); - AssertEx.EqualTolerance(1, quantity27.Shackles, ShacklesTolerance); - Assert.Equal(LengthUnit.Shackle, quantity27.Unit); + var quantity27 = Length.From(1, LengthUnit.PrinterPoint); + AssertEx.EqualTolerance(1, quantity27.PrinterPoints, PrinterPointsTolerance); + Assert.Equal(LengthUnit.PrinterPoint, quantity27.Unit); - var quantity28 = Length.From(1, LengthUnit.SolarRadius); - AssertEx.EqualTolerance(1, quantity28.SolarRadiuses, SolarRadiusesTolerance); - Assert.Equal(LengthUnit.SolarRadius, quantity28.Unit); + var quantity28 = Length.From(1, LengthUnit.Shackle); + AssertEx.EqualTolerance(1, quantity28.Shackles, ShacklesTolerance); + Assert.Equal(LengthUnit.Shackle, quantity28.Unit); - var quantity29 = Length.From(1, LengthUnit.Twip); - AssertEx.EqualTolerance(1, quantity29.Twips, TwipsTolerance); - Assert.Equal(LengthUnit.Twip, quantity29.Unit); + var quantity29 = Length.From(1, LengthUnit.SolarRadius); + AssertEx.EqualTolerance(1, quantity29.SolarRadiuses, SolarRadiusesTolerance); + Assert.Equal(LengthUnit.SolarRadius, quantity29.Unit); - var quantity30 = Length.From(1, LengthUnit.UsSurveyFoot); - AssertEx.EqualTolerance(1, quantity30.UsSurveyFeet, UsSurveyFeetTolerance); - Assert.Equal(LengthUnit.UsSurveyFoot, quantity30.Unit); + var quantity30 = Length.From(1, LengthUnit.Twip); + AssertEx.EqualTolerance(1, quantity30.Twips, TwipsTolerance); + Assert.Equal(LengthUnit.Twip, quantity30.Unit); - var quantity31 = Length.From(1, LengthUnit.Yard); - AssertEx.EqualTolerance(1, quantity31.Yards, YardsTolerance); - Assert.Equal(LengthUnit.Yard, quantity31.Unit); + var quantity31 = Length.From(1, LengthUnit.UsSurveyFoot); + AssertEx.EqualTolerance(1, quantity31.UsSurveyFeet, UsSurveyFeetTolerance); + Assert.Equal(LengthUnit.UsSurveyFoot, quantity31.Unit); + + var quantity32 = Length.From(1, LengthUnit.Yard); + AssertEx.EqualTolerance(1, quantity32.Yards, YardsTolerance); + Assert.Equal(LengthUnit.Yard, quantity32.Unit); } @@ -349,6 +356,7 @@ public void As() var meter = Length.FromMeters(1); AssertEx.EqualTolerance(AstronomicalUnitsInOneMeter, meter.As(LengthUnit.AstronomicalUnit), AstronomicalUnitsTolerance); AssertEx.EqualTolerance(CentimetersInOneMeter, meter.As(LengthUnit.Centimeter), CentimetersTolerance); + AssertEx.EqualTolerance(ChainsInOneMeter, meter.As(LengthUnit.Chain), ChainsTolerance); AssertEx.EqualTolerance(DecimetersInOneMeter, meter.As(LengthUnit.Decimeter), DecimetersTolerance); AssertEx.EqualTolerance(DtpPicasInOneMeter, meter.As(LengthUnit.DtpPica), DtpPicasTolerance); AssertEx.EqualTolerance(DtpPointsInOneMeter, meter.As(LengthUnit.DtpPoint), DtpPointsTolerance); @@ -394,6 +402,10 @@ public void ToUnit() AssertEx.EqualTolerance(CentimetersInOneMeter, (double)centimeterQuantity.Value, CentimetersTolerance); Assert.Equal(LengthUnit.Centimeter, centimeterQuantity.Unit); + var chainQuantity = meter.ToUnit(LengthUnit.Chain); + AssertEx.EqualTolerance(ChainsInOneMeter, (double)chainQuantity.Value, ChainsTolerance); + Assert.Equal(LengthUnit.Chain, chainQuantity.Unit); + var decimeterQuantity = meter.ToUnit(LengthUnit.Decimeter); AssertEx.EqualTolerance(DecimetersInOneMeter, (double)decimeterQuantity.Value, DecimetersTolerance); Assert.Equal(LengthUnit.Decimeter, decimeterQuantity.Unit); @@ -521,6 +533,7 @@ public void ConversionRoundTrip() Length meter = Length.FromMeters(1); AssertEx.EqualTolerance(1, Length.FromAstronomicalUnits(meter.AstronomicalUnits).Meters, AstronomicalUnitsTolerance); AssertEx.EqualTolerance(1, Length.FromCentimeters(meter.Centimeters).Meters, CentimetersTolerance); + AssertEx.EqualTolerance(1, Length.FromChains(meter.Chains).Meters, ChainsTolerance); AssertEx.EqualTolerance(1, Length.FromDecimeters(meter.Decimeters).Meters, DecimetersTolerance); AssertEx.EqualTolerance(1, Length.FromDtpPicas(meter.DtpPicas).Meters, DtpPicasTolerance); AssertEx.EqualTolerance(1, Length.FromDtpPoints(meter.DtpPoints).Meters, DtpPointsTolerance); @@ -692,6 +705,7 @@ public void ToString_ReturnsValueAndUnitAbbreviationInCurrentCulture() try { Assert.Equal("1 au", new Length(1, LengthUnit.AstronomicalUnit).ToString()); Assert.Equal("1 cm", new Length(1, LengthUnit.Centimeter).ToString()); + Assert.Equal("1 ch", new Length(1, LengthUnit.Chain).ToString()); Assert.Equal("1 dm", new Length(1, LengthUnit.Decimeter).ToString()); Assert.Equal("1 pica", new Length(1, LengthUnit.DtpPica).ToString()); Assert.Equal("1 pt", new Length(1, LengthUnit.DtpPoint).ToString()); @@ -737,6 +751,7 @@ public void ToString_WithSwedishCulture_ReturnsUnitAbbreviationForEnglishCulture Assert.Equal("1 au", new Length(1, LengthUnit.AstronomicalUnit).ToString(swedishCulture)); Assert.Equal("1 cm", new Length(1, LengthUnit.Centimeter).ToString(swedishCulture)); + Assert.Equal("1 ch", new Length(1, LengthUnit.Chain).ToString(swedishCulture)); Assert.Equal("1 dm", new Length(1, LengthUnit.Decimeter).ToString(swedishCulture)); Assert.Equal("1 pica", new Length(1, LengthUnit.DtpPica).ToString(swedishCulture)); Assert.Equal("1 pt", new Length(1, LengthUnit.DtpPoint).ToString(swedishCulture)); diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.g.cs index c5a800e823..b5fdf7f08f 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Quantities/Length.g.cs @@ -165,6 +165,11 @@ private Length(double value, LengthUnit unit) /// public double Centimeters => As(LengthUnit.Centimeter); + /// + /// Get Length in Chains. + /// + public double Chains => As(LengthUnit.Chain); + /// /// Get Length in Decimeters. /// @@ -366,6 +371,16 @@ public static Length FromCentimeters(double centimeters) return new Length(value, LengthUnit.Centimeter); } /// + /// Get Length from Chains. + /// + /// If value is NaN or Infinity. + [Windows.Foundation.Metadata.DefaultOverload] + public static Length FromChains(double chains) + { + double value = (double) chains; + return new Length(value, LengthUnit.Chain); + } + /// /// Get Length from Decimeters. /// /// If value is NaN or Infinity. @@ -958,6 +973,7 @@ private double AsBaseUnit() { case LengthUnit.AstronomicalUnit: return _value * 1.4959787070e11; case LengthUnit.Centimeter: return (_value) * 1e-2d; + case LengthUnit.Chain: return _value*20.1168; case LengthUnit.Decimeter: return (_value) * 1e-1d; case LengthUnit.DtpPica: return _value/236.220472441; case LengthUnit.DtpPoint: return (_value/72)*2.54e-2; @@ -1004,6 +1020,7 @@ private double AsBaseNumericType(LengthUnit unit) { case LengthUnit.AstronomicalUnit: return baseUnitValue / 1.4959787070e11; case LengthUnit.Centimeter: return (baseUnitValue) / 1e-2d; + case LengthUnit.Chain: return baseUnitValue/20.1168; case LengthUnit.Decimeter: return (baseUnitValue) / 1e-1d; case LengthUnit.DtpPica: return baseUnitValue*236.220472441; case LengthUnit.DtpPoint: return (baseUnitValue/2.54e-2)*72; diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs index 1b1a82a8c8..18a3b84e1d 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/UnitAbbreviationsCache.g.cs @@ -533,6 +533,7 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin ("en-US", typeof(LengthUnit), (int)LengthUnit.AstronomicalUnit, new string[]{"au", "ua"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Centimeter, new string[]{"cm"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Centimeter, new string[]{"см"}), + ("en-US", typeof(LengthUnit), (int)LengthUnit.Chain, new string[]{"ch"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Decimeter, new string[]{"dm"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Decimeter, new string[]{"дм"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.DtpPica, new string[]{"pica"}), diff --git a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs index 6b08b2d95b..e3fe5aabc0 100644 --- a/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs +++ b/UnitsNet.WindowsRuntimeComponent/GeneratedCode/Units/LengthUnit.g.cs @@ -33,6 +33,7 @@ public enum LengthUnit /// https://en.wikipedia.org/wiki/Astronomical_unit AstronomicalUnit, Centimeter, + Chain, Decimeter, DtpPica, DtpPoint, diff --git a/UnitsNet/GeneratedCode/Quantities/Length.g.cs b/UnitsNet/GeneratedCode/Quantities/Length.g.cs index ad84dda024..2e208f7c3d 100644 --- a/UnitsNet/GeneratedCode/Quantities/Length.g.cs +++ b/UnitsNet/GeneratedCode/Quantities/Length.g.cs @@ -52,6 +52,7 @@ static Length() new UnitInfo[] { new UnitInfo(LengthUnit.AstronomicalUnit, BaseUnits.Undefined), new UnitInfo(LengthUnit.Centimeter, BaseUnits.Undefined), + new UnitInfo(LengthUnit.Chain, new BaseUnits(length: LengthUnit.Chain)), new UnitInfo(LengthUnit.Decimeter, BaseUnits.Undefined), new UnitInfo(LengthUnit.DtpPica, new BaseUnits(length: LengthUnit.DtpPica)), new UnitInfo(LengthUnit.DtpPoint, new BaseUnits(length: LengthUnit.DtpPoint)), @@ -204,6 +205,11 @@ public Length(double value, UnitSystem unitSystem) /// public double Centimeters => As(LengthUnit.Centimeter); + /// + /// Get Length in Chains. + /// + public double Chains => As(LengthUnit.Chain); + /// /// Get Length in Decimeters. /// @@ -402,6 +408,15 @@ public static Length FromCentimeters(QuantityValue centimeters) return new Length(value, LengthUnit.Centimeter); } /// + /// Get Length from Chains. + /// + /// If value is NaN or Infinity. + public static Length FromChains(QuantityValue chains) + { + double value = (double) chains; + return new Length(value, LengthUnit.Chain); + } + /// /// Get Length from Decimeters. /// /// If value is NaN or Infinity. @@ -1102,6 +1117,7 @@ private double GetValueInBaseUnit() { case LengthUnit.AstronomicalUnit: return _value * 1.4959787070e11; case LengthUnit.Centimeter: return (_value) * 1e-2d; + case LengthUnit.Chain: return _value*20.1168; case LengthUnit.Decimeter: return (_value) * 1e-1d; case LengthUnit.DtpPica: return _value/236.220472441; case LengthUnit.DtpPoint: return (_value/72)*2.54e-2; @@ -1159,6 +1175,7 @@ private double GetValueAs(LengthUnit unit) { case LengthUnit.AstronomicalUnit: return baseUnitValue / 1.4959787070e11; case LengthUnit.Centimeter: return (baseUnitValue) / 1e-2d; + case LengthUnit.Chain: return baseUnitValue/20.1168; case LengthUnit.Decimeter: return (baseUnitValue) / 1e-1d; case LengthUnit.DtpPica: return baseUnitValue*236.220472441; case LengthUnit.DtpPoint: return (baseUnitValue/2.54e-2)*72; diff --git a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs index de25099c97..50e5c58e82 100644 --- a/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs +++ b/UnitsNet/GeneratedCode/UnitAbbreviationsCache.g.cs @@ -533,6 +533,7 @@ private static readonly (string CultureName, Type UnitType, int UnitValue, strin ("en-US", typeof(LengthUnit), (int)LengthUnit.AstronomicalUnit, new string[]{"au", "ua"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Centimeter, new string[]{"cm"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Centimeter, new string[]{"см"}), + ("en-US", typeof(LengthUnit), (int)LengthUnit.Chain, new string[]{"ch"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.Decimeter, new string[]{"dm"}), ("ru-RU", typeof(LengthUnit), (int)LengthUnit.Decimeter, new string[]{"дм"}), ("en-US", typeof(LengthUnit), (int)LengthUnit.DtpPica, new string[]{"pica"}), diff --git a/UnitsNet/GeneratedCode/UnitConverter.g.cs b/UnitsNet/GeneratedCode/UnitConverter.g.cs index 2b8c85ff25..239f5fb825 100644 --- a/UnitsNet/GeneratedCode/UnitConverter.g.cs +++ b/UnitsNet/GeneratedCode/UnitConverter.g.cs @@ -823,6 +823,8 @@ public static void RegisterDefaultConversions(UnitConverter unitConverter) unitConverter.SetConversionFunction(LengthUnit.AstronomicalUnit, Length.BaseUnit, q => q.ToBaseUnit()); unitConverter.SetConversionFunction(Length.BaseUnit, LengthUnit.Centimeter, q => q.ToUnit(LengthUnit.Centimeter)); unitConverter.SetConversionFunction(LengthUnit.Centimeter, Length.BaseUnit, q => q.ToBaseUnit()); + unitConverter.SetConversionFunction(Length.BaseUnit, LengthUnit.Chain, q => q.ToUnit(LengthUnit.Chain)); + unitConverter.SetConversionFunction(LengthUnit.Chain, Length.BaseUnit, q => q.ToBaseUnit()); unitConverter.SetConversionFunction(Length.BaseUnit, LengthUnit.Decimeter, q => q.ToUnit(LengthUnit.Decimeter)); unitConverter.SetConversionFunction(LengthUnit.Decimeter, Length.BaseUnit, q => q.ToBaseUnit()); unitConverter.SetConversionFunction(Length.BaseUnit, LengthUnit.DtpPica, q => q.ToUnit(LengthUnit.DtpPica)); diff --git a/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs b/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs index 6b08b2d95b..e3fe5aabc0 100644 --- a/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs +++ b/UnitsNet/GeneratedCode/Units/LengthUnit.g.cs @@ -33,6 +33,7 @@ public enum LengthUnit /// https://en.wikipedia.org/wiki/Astronomical_unit AstronomicalUnit, Centimeter, + Chain, Decimeter, DtpPica, DtpPoint,