From e8161a5148d16f7cdda8b97568b36bfe65cab57e Mon Sep 17 00:00:00 2001
From: Pang Yu Shao
Date: Tue, 11 May 2021 19:53:02 +0800
Subject: [PATCH] Added more test cases to check for accessing other dicts
---
.../functional/c/consider/consider_using_dict_items.py | 10 +++++++++-
.../c/consider/consider_using_dict_items.txt | 10 +++++-----
2 files changed, 14 insertions(+), 6 deletions(-)
diff --git a/tests/functional/c/consider/consider_using_dict_items.py b/tests/functional/c/consider/consider_using_dict_items.py
index db3626e10a..f45d5eca41 100644
--- a/tests/functional/c/consider/consider_using_dict_items.py
+++ b/tests/functional/c/consider/consider_using_dict_items.py
@@ -54,6 +54,15 @@ class Foo:
for k5 in Foo.c_dict: # [consider-using-dict-items]
val = Foo.c_dict[k5]
+c_dict = {}
+
+# Should NOT emit warning whey key used to access a different dict
+for k5 in Foo.c_dict: # This is fine
+ val = b_dict[k5]
+
+for k5 in Foo.c_dict: # This is fine
+ val = c_dict[k5]
+
# Should emit warning within a list/dict comprehension
val = {k9: b_dict[k9] for k9 in b_dict} # [consider-using-dict-items]
val = [(k7, b_dict[k7]) for k7 in b_dict] # [consider-using-dict-items]
@@ -70,6 +79,5 @@ class Foo:
val = any(True for k8 in Foo.c_dict if b_dict[k8])
# Should NOT emit warning, essentially same check as above
-c_dict = {}
val = [(k7, c_dict[k7]) for k7 in Foo.c_dict]
val = any(True for k8 in Foo.c_dict if c_dict[k8])
diff --git a/tests/functional/c/consider/consider_using_dict_items.txt b/tests/functional/c/consider/consider_using_dict_items.txt
index d5fd1f821d..00451fb4d4 100644
--- a/tests/functional/c/consider/consider_using_dict_items.txt
+++ b/tests/functional/c/consider/consider_using_dict_items.txt
@@ -6,8 +6,8 @@ consider-using-dict-items:44:0::Consider iterating with .items()
consider-iterating-dictionary:47:10::Consider iterating the dictionary directly instead of calling .keys()
consider-using-dict-items:47:0::Consider iterating with .items()
consider-using-dict-items:54:0::Consider iterating with .items()
-consider-using-dict-items:58:0::Consider iterating with .items()
-consider-using-dict-items:59:0::Consider iterating with .items()
-consider-using-dict-items:62:0::Consider iterating with .items()
-consider-using-dict-items:63:0::Consider iterating with .items()
-consider-using-dict-items:66:0::Consider iterating with .items()
+consider-using-dict-items:67:0::Consider iterating with .items()
+consider-using-dict-items:68:0::Consider iterating with .items()
+consider-using-dict-items:71:0::Consider iterating with .items()
+consider-using-dict-items:72:0::Consider iterating with .items()
+consider-using-dict-items:75:0::Consider iterating with .items()