summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorcarl <devnull@localhost>2014-07-27 15:51:41 +0200
committercarl <devnull@localhost>2014-07-27 15:51:41 +0200
commita4e38ceb7d2591226140c424b5f0ee7fbbd82014 (patch)
tree82cabeb9503362922dec48eff34b3731efc44777 /test
parentf3a5077d08516bf04d7769f82b44f5bb13da1d74 (diff)
downloadpylint-a4e38ceb7d2591226140c424b5f0ee7fbbd82014.tar.gz
[refs #282] dangerous-default-values are now not evaluated to get their type/name, as this would dump the entire contents of the list or dictionary into the error message. This is not desirable for large defaults, or for sensitive information such as os.environ.
Diffstat (limited to 'test')
-rw-r--r--test/input/func_dangerous_default.py25
-rw-r--r--test/messages/func_dangerous_default.txt5
-rw-r--r--test/messages/func_dangerous_default_py30.txt5
-rw-r--r--test/messages/func_set_literal_as_default_py27.txt2
4 files changed, 36 insertions, 1 deletions
diff --git a/test/input/func_dangerous_default.py b/test/input/func_dangerous_default.py
index 3e07415..8bf2c3f 100644
--- a/test/input/func_dangerous_default.py
+++ b/test/input/func_dangerous_default.py
@@ -37,3 +37,28 @@ def function7(value=dict()):
def function8(value=list()):
"""list is mutable and dangerous."""
print value
+
+def function9(value=[1, 2, 3, 4]):
+ """list with items should not output item values in error message"""
+ print value
+
+def function10(value={'a': 1, 'b': 2}):
+ """dictionaries with items should not output item values in error message"""
+ print value
+
+def function11(value=list([1, 2, 3])):
+ """list with items should not output item values in error message"""
+ print value
+
+def function12(value=dict([('a', 1), ('b', 2)])):
+ """dictionaries with items should not output item values in error message"""
+ print value
+
+OINK = {
+ 'a': 1,
+ 'b': 2
+}
+
+def function13(value=OINK):
+ """dictionaries with items should not output item values in error message"""
+ print value
diff --git a/test/messages/func_dangerous_default.txt b/test/messages/func_dangerous_default.txt
index 6846c07..ddf94f4 100644
--- a/test/messages/func_dangerous_default.txt
+++ b/test/messages/func_dangerous_default.txt
@@ -4,3 +4,8 @@ W: 19:function4: Dangerous default value set() (__builtin__.set) as argument
W: 29:function6: Dangerous default value GLOBAL_SET (__builtin__.set) as argument
W: 33:function7: Dangerous default value dict() (__builtin__.dict) as argument
W: 37:function8: Dangerous default value list() (__builtin__.list) as argument
+W: 41:function9: Dangerous default value [] as argument
+W: 45:function10: Dangerous default value {} as argument
+W: 49:function11: Dangerous default value list() (__builtin__.list) as argument
+W: 53:function12: Dangerous default value dict() (__builtin__.dict) as argument
+W: 62:function13: Dangerous default value OINK ({}) as argument
diff --git a/test/messages/func_dangerous_default_py30.txt b/test/messages/func_dangerous_default_py30.txt
index b068149..1a6dbf0 100644
--- a/test/messages/func_dangerous_default_py30.txt
+++ b/test/messages/func_dangerous_default_py30.txt
@@ -4,3 +4,8 @@ W: 19:function4: Dangerous default value set() (builtins.set) as argument
W: 29:function6: Dangerous default value GLOBAL_SET (builtins.set) as argument
W: 33:function7: Dangerous default value dict() (builtins.dict) as argument
W: 37:function8: Dangerous default value list() (builtins.list) as argument
+W: 41:function9: Dangerous default value [] as argument
+W: 45:function10: Dangerous default value {} as argument
+W: 49:function11: Dangerous default value list() (builtins.list) as argument
+W: 53:function12: Dangerous default value dict() (builtins.dict) as argument
+W: 62:function13: Dangerous default value OINK ({}) as argument
diff --git a/test/messages/func_set_literal_as_default_py27.txt b/test/messages/func_set_literal_as_default_py27.txt
index 6a7a893..ba38ec4 100644
--- a/test/messages/func_set_literal_as_default_py27.txt
+++ b/test/messages/func_set_literal_as_default_py27.txt
@@ -1 +1 @@
-W: 5:function1: Dangerous default value {1} as argument
+W: 5:function1: Dangerous default value set() as argument