diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2021-06-01 06:10:39 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2021-06-01 06:10:39 -0400 |
commit | 5ed7c17b6f8e3a4b9b9826d2aa4459695b9e5a86 (patch) | |
tree | 197e95d7fce3c70df04d12e947302ed7dbade701 /tests/test_results.py | |
parent | 1157999dc5c6c3aa3129a7cd4bf249fe73598501 (diff) | |
download | python-coveragepy-git-5ed7c17b6f8e3a4b9b9826d2aa4459695b9e5a86.tar.gz |
refactor: remove globals from Numbers
Diffstat (limited to 'tests/test_results.py')
-rw-r--r-- | tests/test_results.py | 41 |
1 files changed, 13 insertions, 28 deletions
diff --git a/tests/test_results.py b/tests/test_results.py index fa239e92..02b1f963 100644 --- a/tests/test_results.py +++ b/tests/test_results.py @@ -43,30 +43,18 @@ class NumbersTest(CoverageTest): assert n3.n_missing == 28 assert round(abs(n3.pc_covered-86.666666666), 7) == 0 - def test_pc_covered_str(self): - # Numbers._precision is a global, which is bad. - Numbers.set_precision(0) - n0 = Numbers(n_files=1, n_statements=1000, n_missing=0) - n1 = Numbers(n_files=1, n_statements=1000, n_missing=1) - n999 = Numbers(n_files=1, n_statements=1000, n_missing=999) - n1000 = Numbers(n_files=1, n_statements=1000, n_missing=1000) - assert n0.pc_covered_str == "100" - assert n1.pc_covered_str == "99" - assert n999.pc_covered_str == "1" - assert n1000.pc_covered_str == "0" - - def test_pc_covered_str_precision(self): - # Numbers._precision is a global, which is bad. - Numbers.set_precision(1) - n0 = Numbers(n_files=1, n_statements=10000, n_missing=0) - n1 = Numbers(n_files=1, n_statements=10000, n_missing=1) - n9999 = Numbers(n_files=1, n_statements=10000, n_missing=9999) - n10000 = Numbers(n_files=1, n_statements=10000, n_missing=10000) - assert n0.pc_covered_str == "100.0" - assert n1.pc_covered_str == "99.9" - assert n9999.pc_covered_str == "0.1" - assert n10000.pc_covered_str == "0.0" - Numbers.set_precision(0) + @pytest.mark.parametrize("kwargs, res", [ + (dict(n_files=1, n_statements=1000, n_missing=0), "100"), + (dict(n_files=1, n_statements=1000, n_missing=1), "99"), + (dict(n_files=1, n_statements=1000, n_missing=999), "1"), + (dict(n_files=1, n_statements=1000, n_missing=1000), "0"), + (dict(precision=1, n_files=1, n_statements=10000, n_missing=0), "100.0"), + (dict(precision=1, n_files=1, n_statements=10000, n_missing=1), "99.9"), + (dict(precision=1, n_files=1, n_statements=10000, n_missing=9999), "0.1"), + (dict(precision=1, n_files=1, n_statements=10000, n_missing=10000), "0.0"), + ]) + def test_pc_covered_str(self, kwargs, res): + assert Numbers(**kwargs).pc_covered_str == res @pytest.mark.parametrize("prec, pc, res", [ (0, 47.87, "48"), @@ -75,10 +63,7 @@ class NumbersTest(CoverageTest): (2, 99.99995, "99.99"), ]) def test_display_covered(self, prec, pc, res): - # Numbers._precision is a global, which is bad. - Numbers.set_precision(prec) - assert Numbers.display_covered(pc) == res - Numbers.set_precision(0) + assert Numbers(precision=prec).display_covered(pc) == res def test_covered_ratio(self): n = Numbers(n_files=1, n_statements=200, n_missing=47) |