From 03af975134e123ae4125adcea4de6734fef8e3ae Mon Sep 17 00:00:00 2001 From: wmayer Date: Mon, 2 Apr 2018 14:04:32 +0200 Subject: [PATCH] fix failing unit tests by using adaptive delte value --- src/Mod/Test/UnitTests.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/Mod/Test/UnitTests.py b/src/Mod/Test/UnitTests.py index 65a55b0f27..4ed4a4bea1 100644 --- a/src/Mod/Test/UnitTests.py +++ b/src/Mod/Test/UnitTests.py @@ -24,6 +24,10 @@ def compare(x, y): class UnitBasicCases(unittest.TestCase): + def setUp(self): + par = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Units") + dec = par.GetInt("Decimals") + self.delta = math.pow(10,-dec) def testConversions(self): #tu = FreeCAD.Units.translateUnit @@ -44,15 +48,15 @@ class UnitBasicCases(unittest.TestCase): psi = FreeCAD.Units.parseQuantity("1psi") mpa = psi.getValueAs("MPa").Value - self.assertAlmostEqual(0.006894744825, mpa, delta=0.00001) + self.assertAlmostEqual(0.006894744825, mpa, delta=self.delta) kpa = psi.getValueAs("kPa").Value - self.assertAlmostEqual(6.894744825494, kpa, delta=0.00001) + self.assertAlmostEqual(6.894744825494, kpa, delta=self.delta) ksi = FreeCAD.Units.parseQuantity("1ksi") mpa = ksi.getValueAs("MPa").Value - self.assertAlmostEqual(6.894744825494, mpa, delta=0.00001) + self.assertAlmostEqual(6.894744825494, mpa, delta=self.delta) kpa = ksi.getValueAs("kPa").Value - self.assertAlmostEqual(6894.744825494, kpa, delta=0.00001) + self.assertAlmostEqual(6894.744825494, kpa, delta=self.delta) def testSelfConsistency(self): qu = FreeCAD.Units.Quantity("0.23 W/m/K") @@ -70,13 +74,13 @@ class UnitBasicCases(unittest.TestCase): for i in range(num): t = FreeCAD.Units.schemaTranslate(psi, i) v = FreeCAD.Units.parseQuantity(t[0]).getValueAs("psi") - self.assertAlmostEqual(1, v.Value, msg="Failed with \"{0}\" scheme: {1} != 1".format(schemes[i], v.Value), delta=0.00001) + self.assertAlmostEqual(1, v.Value, msg="Failed with \"{0}\" scheme: {1} != 1".format(schemes[i], v.Value), delta=self.delta) ksi = FreeCAD.Units.parseQuantity("1ksi") for i in range(num): t = FreeCAD.Units.schemaTranslate(ksi, i) v = FreeCAD.Units.parseQuantity(t[0]).getValueAs("ksi") - self.assertAlmostEqual(1, v.Value, msg="Failed with \"{0}\" scheme: {1} != 1".format(schemes[i], v.Value), delta=0.00001) + self.assertAlmostEqual(1, v.Value, msg="Failed with \"{0}\" scheme: {1} != 1".format(schemes[i], v.Value), delta=self.delta) def testTrigonometric(self): #tu=FreeCAD.Units.translateUnit