summaryrefslogtreecommitdiff
path: root/pylint/test/functional/reused_outer_loop_variable.py
diff options
context:
space:
mode:
Diffstat (limited to 'pylint/test/functional/reused_outer_loop_variable.py')
-rw-r--r--pylint/test/functional/reused_outer_loop_variable.py37
1 files changed, 37 insertions, 0 deletions
diff --git a/pylint/test/functional/reused_outer_loop_variable.py b/pylint/test/functional/reused_outer_loop_variable.py
new file mode 100644
index 000000000..b244e99f5
--- /dev/null
+++ b/pylint/test/functional/reused_outer_loop_variable.py
@@ -0,0 +1,37 @@
+"""Tests for redefining an outer loop variable."""
+from __future__ import print_function
+__revision__ = 0
+
+# Simple nested loop
+for i in range(10):
+ for i in range(10): #[redefined-outer-name]
+ print(i)
+
+# When outer loop unpacks a tuple
+for i, i_again in enumerate(range(10)):
+ for i in range(10): #[redefined-outer-name]
+ print(i, i_again)
+
+# When inner loop unpacks a tuple
+for i in range(10):
+ for i, i_again in range(10): #[redefined-outer-name]
+ print(i, i_again)
+
+# With nested tuple unpacks
+for (a, (b, c)) in [(1, (2, 3))]:
+ for i, a in range(10): #[redefined-outer-name]
+ print(i, a, b, c)
+
+# Ignores when in else
+for i in range(10):
+ print(i)
+ if i > 5:
+ break
+else:
+ for i in range(2):
+ print(i)
+
+# Ignores dummy variables
+for _ in range(10):
+ for _ in range(10):
+ print("Hello")