aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTrygve Laugstøl <trygvis@inamo.no>2017-09-22 08:15:28 +0200
committerTrygve Laugstøl <trygvis@inamo.no>2017-09-22 14:14:55 +0200
commitaeb51e89c1103836b2fd991a0ac789354465b55e (patch)
treee9b4b70f21a9e7f80bd3f667fc31f10b5f96f47b /test
parent21972f97987d239c0bd924c090ede852a0427bec (diff)
downloadee-python-aeb51e89c1103836b2fd991a0ac789354465b55e.tar.gz
ee-python-aeb51e89c1103836b2fd991a0ac789354465b55e.tar.bz2
ee-python-aeb51e89c1103836b2fd991a0ac789354465b55e.tar.xz
ee-python-aeb51e89c1103836b2fd991a0ac789354465b55e.zip
o Properly implementing EeVal as a value parser. Still missing units.
Diffstat (limited to 'test')
-rw-r--r--test/test_formatting.py35
1 files changed, 24 insertions, 11 deletions
diff --git a/test/test_formatting.py b/test/test_formatting.py
index 177912d..88fb8ed 100644
--- a/test/test_formatting.py
+++ b/test/test_formatting.py
@@ -19,7 +19,7 @@ from ee import EeVal
(0.00055, "550 u"),
(0.000055, "55 u"),
(0.0000055, "5.5 u"),
- (0.00000055, "550 p"),
+ (0.00000055, "550 n"),
])
def test_eng_str(input, expected):
assert expected == eng_str(input)
@@ -63,14 +63,27 @@ def xx_test_eng_str3(input, expected):
assert expected == eng_str(input)
-@pytest.mark.parametrize("s, expected", [
- ('1', EeVal("1")),
- ('10', EeVal("10")),
- ('10k', EeVal("10e3")),
- ('10 k', EeVal("10e3")),
- ('10 k', EeVal("10e3")),
- ('1p', EeVal("1e-9")),
- ('100n', EeVal("100e-6")),
+@pytest.mark.parametrize("s, num_value, str_value, unit", [
+ ("1", 1, "1", None),
+ ("10", 10, "10", None),
+ ("10k", 10 * 1000, "10 k", None),
+ ("10 k", 10 * 1000, "10 k", None),
+ ("10 k", 10 * 1000, "10 k", None),
+ ("1000 m", 1, "1", None),
+ ("100 m", 0.1, "100 m", None),
+ ("100 n", 0.0000001, "100 n", None),
+ ("1 m", 0.001, "1 m", None),
+ ("1 u", 0.000001, "1 u", None),
+ ("1 µ", 0.000001, "1 u", None),
+ ("1 n", 0.000000001, "1 n", None),
+ ("10 n", 0.00000001, "10 n", None),
+ ("1p", 1e-12, "1 p", None),
])
-def test_EeVal(s, expected):
- assert expected == EeVal(s)
+def test_EeVal(s, num_value, str_value, unit):
+ num_value = float(num_value)
+ v = EeVal(s)
+ assert float(v) == v.value
+ epsilon = num_value * 0.01
+ assert (num_value + epsilon) >= float(v) and (num_value - epsilon) <= float(v)
+ assert str_value == str(v)
+ assert unit == v.unit