summaryrefslogtreecommitdiff
path: root/tests/test_data.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2021-05-03 07:56:05 -0400
committerNed Batchelder <ned@nedbatchelder.com>2021-05-03 08:17:39 -0400
commite36b42e2db46e892d9347ba0408c99b187ba8cb8 (patch)
tree58fb67d980bfc760f584f211e3af0c58d61d7dbf /tests/test_data.py
parent0ee53f71c4e7145fca1b6d39c5fe60cb1eb3055b (diff)
downloadpython-coveragepy-git-e36b42e2db46e892d9347ba0408c99b187ba8cb8.tar.gz
fix: make data collection operations thread-safe
Diffstat (limited to 'tests/test_data.py')
-rw-r--r--tests/test_data.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/tests/test_data.py b/tests/test_data.py
index 4b385b7f..be978e5e 100644
--- a/tests/test_data.py
+++ b/tests/test_data.py
@@ -486,10 +486,14 @@ class CoverageDataTest(DataTestHelpers, CoverageTest):
def test_thread_stress(self):
covdata = CoverageData()
+ exceptions = []
def thread_main():
"""Every thread will try to add the same data."""
- covdata.add_lines(LINES_1)
+ try:
+ covdata.add_lines(LINES_1)
+ except Exception as ex:
+ exceptions.append(ex)
threads = [threading.Thread(target=thread_main) for _ in range(10)]
for t in threads:
@@ -498,6 +502,7 @@ class CoverageDataTest(DataTestHelpers, CoverageTest):
t.join()
self.assert_lines1_data(covdata)
+ assert exceptions == []
class CoverageDataInTempDirTest(DataTestHelpers, CoverageTest):