Commit 9f26fc6e authored by Victor Stinner's avatar Victor Stinner

tracemalloc: filter_traces() raises a TypeError if filters is not an iterable

parent bbce3580
......@@ -346,6 +346,8 @@ class TestSnapshot(unittest.TestCase):
self.assertIsNot(snapshot5.traces, snapshot.traces)
self.assertEqual(snapshot5.traces, snapshot.traces)
self.assertRaises(TypeError, snapshot.filter_traces, filter1)
def test_snapshot_group_by_line(self):
snapshot, snapshot2 = create_snapshots()
tb_0 = traceback_lineno('<unknown>', 0)
......
from collections import Sequence
from collections import Sequence, Iterable
from functools import total_ordering
import fnmatch
import linecache
......@@ -382,6 +382,9 @@ class Snapshot:
is a list of Filter instances. If filters is an empty list, return a
new Snapshot instance with a copy of the traces.
"""
if not isinstance(filters, Iterable):
raise TypeError("filters must be a list of filters, not %s"
% type(filters).__name__)
if filters:
include_filters = []
exclude_filters = []
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment