mirror of
https://fuchsia.googlesource.com/third_party/github.com/pylint-dev/pylint
synced 2024-09-21 07:58:04 +00:00
95c1435732
Since commit 7df8caaa3e
,
the "# pylint: disable=cyclic-import" statment is
respected.
One case which was not covered is the disabling of the
check for an import from inside a method/function.
Example:
File test1.py
> class B(object):
> pass
>
> def function():
> from . import test2 # pylint: disable=cyclic-import
> pass
File test2.py
> from . import test1
>
> class A(object):
> pass
Pylint wrongly reports:
Cyclic import (testfolder.test1 -> testfolder.test2) (cyclic-import)
This is due to the fact that the self._excluded_edges
dict was not filled with the imports that need to be
excluded. Passing the line number to the
self.linter.is_message_enabled() check allows to not
prematurely return due to the line number being None.
Also fixed (with the help of rogalski) the test setup which
got confused by the second 'func' in the test function name
12 lines
328 B
Python
12 lines
328 B
Python
"""Test disabling of cyclic import check inside a function
|
|
"""
|
|
# pylint: disable=no-absolute-import
|
|
from __future__ import print_function
|
|
|
|
|
|
def func():
|
|
"""Test disabling of cyclic import check inside a function"""
|
|
from . import w0401_cycle # pylint: disable=cyclic-import
|
|
if w0401_cycle:
|
|
print(w0401_cycle)
|