twbk_opener_ND2000/tests/test_Properties_Value.py
2025-03-27 14:51:37 +08:00

36 lines
1.3 KiB
Python

import unittest
from tbwk.Properties import Value
class PropertiesValueTestCase(unittest.TestCase):
test_parameters = [
{"title": "A title", "digits": 3, "value": 1.26391, "unit": "mg/mL", "factor": 33.0,}
]
def test_getters(self):
for i in range(len(self.test_parameters)):
parameters = self.test_parameters[i]
with self.subTest(i=i, parameters=parameters):
value = Value(**parameters)
self.assertEqual(parameters["title"], value.get_title())
self.assertEqual(parameters["digits"], value.get_digits())
self.assertAlmostEqual(parameters["value"], value.get_value(), value.get_digits())
self.assertEqual(parameters["unit"], value.get_unit())
self.assertAlmostEqual(parameters["factor"], value.get_factor(), 3)
def test_if_value_gets_formatted_as_expected(self):
expected = [
"1.264 mg/mL",
]
for i in range(len(self.test_parameters)):
parameters = self.test_parameters[i]
should = expected[i]
with self.subTest(i=i, parameters=parameters):
value = Value(**parameters)
actual = value.get_formatted_value()
self.assertEqual(should, actual)