summaryrefslogtreecommitdiff
path: root/pint/testsuite/test_converters.py
diff options
context:
space:
mode:
Diffstat (limited to 'pint/testsuite/test_converters.py')
-rw-r--r--pint/testsuite/test_converters.py70
1 files changed, 40 insertions, 30 deletions
diff --git a/pint/testsuite/test_converters.py b/pint/testsuite/test_converters.py
index 460b3e5..6e8d59a 100644
--- a/pint/testsuite/test_converters.py
+++ b/pint/testsuite/test_converters.py
@@ -7,60 +7,67 @@ from pint.converters import (
OffsetConverter,
ScaleConverter,
)
-from pint.testsuite import BaseTestCase, helpers
+from pint.testsuite import helpers
-class TestConverter(BaseTestCase):
+class TestConverter:
def test_converter(self):
c = Converter()
- self.assertTrue(c.is_multiplicative)
- self.assertFalse(c.is_logarithmic)
- self.assertTrue(c.to_reference(8))
- self.assertTrue(c.from_reference(8))
+ assert c.is_multiplicative
+ assert not c.is_logarithmic
+ assert c.to_reference(8)
+ assert c.from_reference(8)
def test_multiplicative_converter(self):
c = ScaleConverter(20.0)
- self.assertTrue(c.is_multiplicative)
- self.assertFalse(c.is_logarithmic)
- self.assertEqual(c.from_reference(c.to_reference(100)), 100)
- self.assertEqual(c.to_reference(c.from_reference(100)), 100)
+ assert c.is_multiplicative
+ assert not c.is_logarithmic
+ assert c.from_reference(c.to_reference(100)) == 100
+ assert c.to_reference(c.from_reference(100)) == 100
def test_offset_converter(self):
c = OffsetConverter(20.0, 2)
- self.assertFalse(c.is_multiplicative)
- self.assertFalse(c.is_logarithmic)
- self.assertEqual(c.from_reference(c.to_reference(100)), 100)
- self.assertEqual(c.to_reference(c.from_reference(100)), 100)
+ assert not c.is_multiplicative
+ assert not c.is_logarithmic
+ assert c.from_reference(c.to_reference(100)) == 100
+ assert c.to_reference(c.from_reference(100)) == 100
def test_log_converter(self):
c = LogarithmicConverter(scale=1, logbase=10, logfactor=1)
- self.assertFalse(c.is_multiplicative)
- self.assertTrue(c.is_logarithmic)
- self.assertAlmostEqual(c.to_reference(0), 1)
- self.assertAlmostEqual(c.to_reference(1), 10)
- self.assertAlmostEqual(c.to_reference(2), 100)
- self.assertAlmostEqual(c.from_reference(1), 0)
- self.assertAlmostEqual(c.from_reference(10), 1)
- self.assertAlmostEqual(c.from_reference(100), 2)
+ assert not c.is_multiplicative
+ assert c.is_logarithmic
+ assert round(abs(c.to_reference(0) - 1), 7) == 0
+ assert round(abs(c.to_reference(1) - 10), 7) == 0
+ assert round(abs(c.to_reference(2) - 100), 7) == 0
+ assert round(abs(c.from_reference(1) - 0), 7) == 0
+ assert round(abs(c.from_reference(10) - 1), 7) == 0
+ assert round(abs(c.from_reference(100) - 2), 7) == 0
arb_value = 20.0
- self.assertAlmostEqual(c.from_reference(c.to_reference(arb_value)), arb_value)
- self.assertAlmostEqual(c.to_reference(c.from_reference(arb_value)), arb_value)
+ assert (
+ round(abs(c.from_reference(c.to_reference(arb_value)) - arb_value), 7) == 0
+ )
+ assert (
+ round(abs(c.to_reference(c.from_reference(arb_value)) - arb_value), 7) == 0
+ )
- @helpers.requires_numpy()
+ @helpers.requires_numpy
def test_converter_inplace(self):
for c in (ScaleConverter(20.0), OffsetConverter(20.0, 2)):
fun1 = lambda x, y: c.from_reference(c.to_reference(x, y), y)
fun2 = lambda x, y: c.to_reference(c.from_reference(x, y), y)
for fun, (inplace, comp) in itertools.product(
- (fun1, fun2), ((True, self.assertIs), (False, self.assertIsNot))
+ (fun1, fun2), ((True, True), (False, False))
):
a = np.ones((1, 10))
ac = np.ones((1, 10))
r = fun(a, inplace)
np.testing.assert_allclose(r, ac)
- comp(a, r)
+ if comp:
+ assert a is r
+ else:
+ assert a is not r
- @helpers.requires_numpy()
+ @helpers.requires_numpy
def test_log_converter_inplace(self):
arb_value = 3.14
c = LogarithmicConverter(scale=1, logbase=10, logfactor=1)
@@ -74,9 +81,12 @@ class TestConverter(BaseTestCase):
)
for fun, (inplace, comp) in itertools.product(
- (from_to, to_from), ((True, self.assertIs), (False, self.assertIsNot))
+ (from_to, to_from), ((True, True), (False, False))
):
arb_array = arb_value * np.ones((1, 10))
result = fun(arb_array, inplace)
np.testing.assert_allclose(result, arb_array)
- comp(arb_array, result)
+ if comp:
+ assert arb_array is result
+ else:
+ assert arb_array is not result