From d1ee127ad81ba8f5f285e590eed0c9768b6cc730 Mon Sep 17 00:00:00 2001 From: Evan Purkhiser Date: Wed, 12 Aug 2020 15:31:03 -0700 Subject: [PATCH 1/3] fix(py3): Various more iter -> list cohersions --- src/sentry/api/serializers/models/rule.py | 4 ++-- src/sentry/tagstore/snuba/backend.py | 2 +- tests/sentry/data_export/test_models.py | 2 +- tests/snuba/tasks/test_unmerge.py | 6 +++--- tests/snuba/tsdb/test_tsdb_backend.py | 4 ++-- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/sentry/api/serializers/models/rule.py b/src/sentry/api/serializers/models/rule.py index 7dc83a5037c322..4fb6e2bb834608 100644 --- a/src/sentry/api/serializers/models/rule.py +++ b/src/sentry/api/serializers/models/rule.py @@ -39,11 +39,11 @@ def serialize(self, obj, attrs, user): # as part of the rule editor "id": six.text_type(obj.id) if obj.id else None, "conditions": [ - dict(o.items() + [("name", _generate_rule_label(obj.project, obj, o))]) + dict(list(o.items()) + [("name", _generate_rule_label(obj.project, obj, o))]) for o in obj.data.get("conditions", []) ], "actions": [ - dict(o.items() + [("name", _generate_rule_label(obj.project, obj, o))]) + dict(list(o.items()) + [("name", _generate_rule_label(obj.project, obj, o))]) for o in obj.data.get("actions", []) ], "actionMatch": obj.data.get("action_match") or Rule.DEFAULT_CONDITION_MATCH, diff --git a/src/sentry/tagstore/snuba/backend.py b/src/sentry/tagstore/snuba/backend.py index 11492ffd2a6443..70e5ff7bc64c9e 100644 --- a/src/sentry/tagstore/snuba/backend.py +++ b/src/sentry/tagstore/snuba/backend.py @@ -543,7 +543,7 @@ def __get_release(self, project_id, group_id, first=True): if not result: return None else: - return result.keys()[0] + return list(result.keys())[0] def get_first_release(self, project_id, group_id): return self.__get_release(project_id, group_id, True) diff --git a/tests/sentry/data_export/test_models.py b/tests/sentry/data_export/test_models.py index bfd1cf254ccca9..c94c7f435b13d9 100644 --- a/tests/sentry/data_export/test_models.py +++ b/tests/sentry/data_export/test_models.py @@ -45,7 +45,7 @@ def test_status_property(self): def test_payload_property(self): assert isinstance(self.data_export.payload, dict) - keys = self.data_export.query_info.keys() + ["export_type"] + keys = list(self.data_export.query_info.keys()) + ["export_type"] assert sorted(self.data_export.payload.keys()) == sorted(keys) def test_file_name_property(self): diff --git a/tests/snuba/tasks/test_unmerge.py b/tests/snuba/tasks/test_unmerge.py index 13d05fa58631ab..738ebe7c13b766 100644 --- a/tests/snuba/tasks/test_unmerge.py +++ b/tests/snuba/tasks/test_unmerge.py @@ -283,7 +283,7 @@ def create_message_event(template, parameters, environment, release, fingerprint with self.tasks(): eventstream_state = eventstream.start_unmerge( - project.id, [events.keys()[0]], source.id, destination.id + project.id, [list(events.keys())[0]], source.id, destination.id ) unmerge.delay( project.id, source.id, destination.id, [events.keys()[0]], None, batch_size=5 @@ -320,7 +320,7 @@ def create_message_event(template, parameters, environment, release, fingerprint assert set( GroupHash.objects.filter(group_id=source.id).values_list("hash", flat=True) - ) == set([events.keys()[0], events.keys()[1]]) + ) == set([list(events.keys())[0], list(events.keys())[1]]) assert set( GroupRelease.objects.filter(group_id=source.id).values_list( @@ -347,7 +347,7 @@ def create_message_event(template, parameters, environment, release, fingerprint assert set( GroupHash.objects.filter(group_id=destination.id).values_list("hash", flat=True) - ) == set([events.keys()[2]]) + ) == set([list(events.keys())[2]]) assert set( GroupRelease.objects.filter(group_id=destination.id).values_list( diff --git a/tests/snuba/tsdb/test_tsdb_backend.py b/tests/snuba/tsdb/test_tsdb_backend.py index 9ec4fba80573de..111fa2272d0ab1 100644 --- a/tests/snuba/tsdb/test_tsdb_backend.py +++ b/tests/snuba/tsdb/test_tsdb_backend.py @@ -41,8 +41,8 @@ def has_shape(data, shape, allow_empty=False): if isinstance(data, dict): return ( (allow_empty or len(data) > 0) - and all(has_shape(k, shape.keys()[0]) for k in data.keys()) - and all(has_shape(v, shape.values()[0]) for v in data.values()) + and all(has_shape(k, list(shape.keys())[0]) for k in data.keys()) + and all(has_shape(v, list(shape.values())[0]) for v in data.values()) ) elif isinstance(data, list): return (allow_empty or len(data) > 0) and all(has_shape(v, shape[0]) for v in data) From 6f0ae4db71ae23cbda9b2560f70068d646ed4725 Mon Sep 17 00:00:00 2001 From: Evan Purkhiser Date: Thu, 13 Aug 2020 13:43:26 -0700 Subject: [PATCH 2/3] Update tests/snuba/tasks/test_unmerge.py Co-authored-by: Burak Yigit Kaya --- tests/snuba/tasks/test_unmerge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/snuba/tasks/test_unmerge.py b/tests/snuba/tasks/test_unmerge.py index 738ebe7c13b766..2103cd53528db2 100644 --- a/tests/snuba/tasks/test_unmerge.py +++ b/tests/snuba/tasks/test_unmerge.py @@ -320,7 +320,7 @@ def create_message_event(template, parameters, environment, release, fingerprint assert set( GroupHash.objects.filter(group_id=source.id).values_list("hash", flat=True) - ) == set([list(events.keys())[0], list(events.keys())[1]]) + ) == set(itertools.islice(events.keys(), 2)) assert set( GroupRelease.objects.filter(group_id=source.id).values_list( From afdad7e9b2e889f989ce57d001313c8d9ca03801 Mon Sep 17 00:00:00 2001 From: Evan Purkhiser Date: Thu, 13 Aug 2020 13:43:47 -0700 Subject: [PATCH 3/3] Update tests/snuba/tasks/test_unmerge.py Co-authored-by: Burak Yigit Kaya --- tests/snuba/tasks/test_unmerge.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/snuba/tasks/test_unmerge.py b/tests/snuba/tasks/test_unmerge.py index 2103cd53528db2..5f624accfc0e74 100644 --- a/tests/snuba/tasks/test_unmerge.py +++ b/tests/snuba/tasks/test_unmerge.py @@ -347,7 +347,7 @@ def create_message_event(template, parameters, environment, release, fingerprint assert set( GroupHash.objects.filter(group_id=destination.id).values_list("hash", flat=True) - ) == set([list(events.keys())[2]]) + ) == set(itertools.islice(events.keys(), 2, 3)) assert set( GroupRelease.objects.filter(group_id=destination.id).values_list(