[PTRun][UnitConverter]Preserve more significant digits (#35073)

* [PTRun][UnitConverter]Preserve more significant digits

* Use StringComparison.OrdinalIgnoreCase
This commit is contained in:
PesBandi
2024-10-18 15:51:57 +02:00
committed by GitHub
parent dd5cd2a570
commit e99b52fb35
4 changed files with 28 additions and 66 deletions

View File

@@ -57,8 +57,8 @@ namespace Community.PowerToys.Run.Plugin.UnitConverter.UnitTest
var convertModel = new ConvertModel(1, "parsec", "nanometer");
var result = UnitHandler.Convert(convertModel).Single();
var str = result.ToString(System.Globalization.CultureInfo.InvariantCulture);
Assert.AreEqual(3.0857000000000004E+25, result.ConvertedValue);
Assert.AreEqual("3.0857e+25 nanometer", str);
Assert.AreEqual(3.08567758128E+25, result.ConvertedValue);
Assert.AreEqual("3.08567758128E+25 nanometer", str);
}
[TestMethod]
@@ -67,8 +67,8 @@ namespace Community.PowerToys.Run.Plugin.UnitConverter.UnitTest
var convertModel = new ConvertModel(1, "nanometer", "parsec");
var result = UnitHandler.Convert(convertModel).Single();
var str = result.ToString(System.Globalization.CultureInfo.InvariantCulture);
Assert.AreEqual(3.2408000000000005E-26, result.ConvertedValue);
Assert.AreEqual("3.2408e-26 parsec", str);
Assert.AreEqual(3.240779289666357E-26, result.ConvertedValue);
Assert.AreEqual("3.2407792896664E-26 parsec", str);
}
[TestMethod]
@@ -79,46 +79,13 @@ namespace Community.PowerToys.Run.Plugin.UnitConverter.UnitTest
Assert.AreEqual(0, results.Count());
}
[TestMethod]
public void RoundZero()
{
double result = UnitHandler.Round(0.0);
Assert.AreEqual(0, result);
}
[TestMethod]
public void RoundNormalValue()
{
double result = UnitHandler.Round(3.141592653589793);
Assert.AreEqual(3.1416, result);
}
[TestMethod]
public void RoundSmallValue()
{
double result = UnitHandler.Round(1.23456789012345E-16);
Assert.AreEqual(1.2346E-16, result);
}
[TestMethod]
public void RoundBigValue()
{
double result = UnitHandler.Round(1234567890123456.0);
Assert.AreEqual(1234600000000000.0, result);
}
[TestMethod]
public void RoundNegativeValue()
{
double result = UnitHandler.Round(-3.141592653589793);
Assert.AreEqual(-3.1416, result);
}
[TestMethod]
public void RoundNinesValue()
{
double result = UnitHandler.Round(999999999999.9998);
Assert.AreEqual(1000000000000.0, result);
var convertModel = new ConvertModel(3.14159265358979323, "stone", "kg");
var result = UnitHandler.Convert(convertModel).Single();
var str = result.ToString(System.Globalization.CultureInfo.InvariantCulture);
Assert.AreEqual("19.950018128979… kg", str);
}
}
}