diff options
author | Nick Drozd <nicholasdrozd@gmail.com> | 2019-09-17 03:30:41 -0500 |
---|---|---|
committer | Claudiu Popa <pcmanticore@gmail.com> | 2019-09-17 03:30:41 -0500 |
commit | 8bf8fe1d2a68db880fee76e8fe964c5f28f10723 (patch) | |
tree | adfac58ce324347389e078f444f1ee3eb0a84efd /tests/functional | |
parent | a7f236528bb3758886b97285a56f3f9ce5b13a99 (diff) | |
download | pylint-git-8bf8fe1d2a68db880fee76e8fe964c5f28f10723.tar.gz |
New check: import-outside-toplevel (close #3067) (#3079)
Diffstat (limited to 'tests/functional')
-rw-r--r-- | tests/functional/g/globals.py | 2 | ||||
-rw-r--r-- | tests/functional/i/invalid_exceptions_raised.py | 4 | ||||
-rw-r--r-- | tests/functional/i/invalid_name.py | 2 | ||||
-rw-r--r-- | tests/functional/import_outside_toplevel.py | 34 | ||||
-rw-r--r-- | tests/functional/import_outside_toplevel.txt | 7 | ||||
-rw-r--r-- | tests/functional/m/member_checks.py | 2 | ||||
-rw-r--r-- | tests/functional/r/raising_format_tuple.py | 2 | ||||
-rw-r--r-- | tests/functional/u/undefined_variable.py | 2 | ||||
-rw-r--r-- | tests/functional/u/unused_variable.py | 2 | ||||
-rw-r--r-- | tests/functional/w/wrong_import_position4.py | 2 |
10 files changed, 50 insertions, 9 deletions
diff --git a/tests/functional/g/globals.py b/tests/functional/g/globals.py index 1a24ff736..e7f3cc85b 100644 --- a/tests/functional/g/globals.py +++ b/tests/functional/g/globals.py @@ -29,4 +29,4 @@ def define_constant(): def global_with_import(): """should only warn for global-statement""" global sys # [global-statement] - import sys + import sys # pylint: disable=import-outside-toplevel diff --git a/tests/functional/i/invalid_exceptions_raised.py b/tests/functional/i/invalid_exceptions_raised.py index 78e6b65a0..34f740de4 100644 --- a/tests/functional/i/invalid_exceptions_raised.py +++ b/tests/functional/i/invalid_exceptions_raised.py @@ -1,4 +1,4 @@ -# pylint:disable=too-few-public-methods,no-init,import-error,missing-docstring, not-callable, useless-object-inheritance +# pylint:disable=too-few-public-methods,no-init,import-error,missing-docstring, not-callable, useless-object-inheritance,import-outside-toplevel """test pb with exceptions and old/new style classes""" @@ -77,7 +77,7 @@ def bad_case9(): def unknown_bases(): """Don't emit when we don't know the bases.""" - from lala import bala + from lala import bala # pylint: disable=import-outside-toplevel class MyException(bala): pass raise MyException diff --git a/tests/functional/i/invalid_name.py b/tests/functional/i/invalid_name.py index 1a949904e..83dd22360 100644 --- a/tests/functional/i/invalid_name.py +++ b/tests/functional/i/invalid_name.py @@ -1,5 +1,5 @@ """ Tests for invalid-name checker. """
-# pylint: disable=unused-import, no-absolute-import, wrong-import-position
+# pylint: disable=unused-import, no-absolute-import, wrong-import-position,import-outside-toplevel
AAA = 24
try:
diff --git a/tests/functional/import_outside_toplevel.py b/tests/functional/import_outside_toplevel.py new file mode 100644 index 000000000..0575e59b2 --- /dev/null +++ b/tests/functional/import_outside_toplevel.py @@ -0,0 +1,34 @@ +# pylint: disable=unused-import,multiple-imports,no-self-use,missing-docstring,invalid-name,too-few-public-methods + +import abc + +if 4 == 5: + import ast + + +def f(): + import symtable # [import-outside-toplevel] + + +def g(): + import os, sys # [import-outside-toplevel] + + +def h(): + import time as thyme # [import-outside-toplevel] + + +def i(): + import random as rand, socket as sock # [import-outside-toplevel] + + +class C: + import tokenize # [import-outside-toplevel] + + def j(self): + import turtle # [import-outside-toplevel] + + +def k(flag): + if flag: + import tabnanny # [import-outside-toplevel] diff --git a/tests/functional/import_outside_toplevel.txt b/tests/functional/import_outside_toplevel.txt new file mode 100644 index 000000000..53f9595d2 --- /dev/null +++ b/tests/functional/import_outside_toplevel.txt @@ -0,0 +1,7 @@ +import-outside-toplevel:10:f:Import outside toplevel (symtable) +import-outside-toplevel:14:g:Import outside toplevel (os, sys) +import-outside-toplevel:18:h:Import outside toplevel (time) +import-outside-toplevel:22:i:Import outside toplevel (random, socket) +import-outside-toplevel:26:C:Import outside toplevel (tokenize) +import-outside-toplevel:29:C.j:Import outside toplevel (turtle) +import-outside-toplevel:34:k:Import outside toplevel (tabnanny) diff --git a/tests/functional/m/member_checks.py b/tests/functional/m/member_checks.py index 8d1d636dc..ad7793fd5 100644 --- a/tests/functional/m/member_checks.py +++ b/tests/functional/m/member_checks.py @@ -1,5 +1,5 @@ # pylint: disable=print-statement,missing-docstring,no-self-use,too-few-public-methods,bare-except,broad-except, useless-object-inheritance -# pylint: disable=using-constant-test,expression-not-assigned, assigning-non-slot, unused-variable,pointless-statement, wrong-import-order, wrong-import-position +# pylint: disable=using-constant-test,expression-not-assigned, assigning-non-slot, unused-variable,pointless-statement, wrong-import-order, wrong-import-position,import-outside-toplevel from __future__ import print_function import six class Provider(object): diff --git a/tests/functional/r/raising_format_tuple.py b/tests/functional/r/raising_format_tuple.py index cfdda1023..0f3a3349a 100644 --- a/tests/functional/r/raising_format_tuple.py +++ b/tests/functional/r/raising_format_tuple.py @@ -47,5 +47,5 @@ def bad_unicode(arg): def raise_something_without_name(arg): '''Regression test for nodes without .node attribute''' - import standard_exceptions # pylint: disable=import-error + import standard_exceptions # pylint: disable=import-error,import-outside-toplevel raise standard_exceptions.MyException(u'An %s', arg) # [raising-format-tuple] diff --git a/tests/functional/u/undefined_variable.py b/tests/functional/u/undefined_variable.py index 619794573..0967f7a30 100644 --- a/tests/functional/u/undefined_variable.py +++ b/tests/functional/u/undefined_variable.py @@ -1,4 +1,4 @@ -# pylint: disable=missing-docstring, multiple-statements, useless-object-inheritance +# pylint: disable=missing-docstring, multiple-statements, useless-object-inheritance,import-outside-toplevel # pylint: disable=too-few-public-methods, no-init, no-self-use,bare-except,broad-except, import-error from __future__ import print_function DEFINED = 1 diff --git a/tests/functional/u/unused_variable.py b/tests/functional/u/unused_variable.py index e475a9038..cb5215d99 100644 --- a/tests/functional/u/unused_variable.py +++ b/tests/functional/u/unused_variable.py @@ -1,4 +1,4 @@ -# pylint: disable=missing-docstring, invalid-name, too-few-public-methods, no-self-use, useless-object-inheritance +# pylint: disable=missing-docstring, invalid-name, too-few-public-methods, no-self-use, useless-object-inheritance,import-outside-toplevel def test_regression_737(): import xml # [unused-import] diff --git a/tests/functional/w/wrong_import_position4.py b/tests/functional/w/wrong_import_position4.py index 3f1174f9d..c728241b7 100644 --- a/tests/functional/w/wrong_import_position4.py +++ b/tests/functional/w/wrong_import_position4.py @@ -1,5 +1,5 @@ """Checks import position rule""" -# pylint: disable=unused-import,relative-import,ungrouped-imports,import-error,no-name-in-module,relative-beyond-top-level,unused-variable +# pylint: disable=unused-import,relative-import,ungrouped-imports,import-error,no-name-in-module,relative-beyond-top-level,unused-variable,import-outside-toplevel def method1(): """Method 1""" import x |