src/eric7/Plugins/CheckerPlugins/CodeStyleChecker/Imports/ImportNode.py

branch
eric7
changeset 9458
3b41bb7d1623
parent 9278
36448ca469c2
child 9473
3f23dbf37dbe
equal deleted inserted replaced
9457:1e0a9199479e 9458:3b41bb7d1623
6 """ 6 """
7 Module implementing a class representing an import or import from node. 7 Module implementing a class representing an import or import from node.
8 """ 8 """
9 9
10 # 10 #
11 # adapted from flake8-alphabetize v0.0.17 11 # adapted from flake8-alphabetize v0.0.18
12 # 12 #
13 13
14 import ast 14 import ast
15 from functools import total_ordering 15 from functools import total_ordering
16 16
63 module = astNode.module 63 module = astNode.module
64 self.moduleName = "" if module is None else module 64 self.moduleName = "" if module is None else module
65 self.nodeType = NodeTypeEnum.IMPORT_FROM 65 self.nodeType = NodeTypeEnum.IMPORT_FROM
66 66
67 names = [n.name for n in astNode.names] 67 names = [n.name for n in astNode.names]
68 expectedNames = sorted(names) 68 expectedNames = checker.sorted(names, key=checker.moduleKey)
69 if names != expectedNames: 69 if names != expectedNames:
70 self.error = (self.node, "I202", ", ".join(expectedNames)) 70 self.error = (self.node, "I202", ", ".join(expectedNames))
71 level = astNode.level 71 level = astNode.level
72 72
73 if self.moduleName == "__future__": 73 if self.moduleName == "__future__":
74 group = GroupEnum.FUTURE 74 group = GroupEnum.FUTURE
75 elif self.moduleName in checker.getStandardModules(): 75 elif self.moduleName.split(".")[0] in checker.getStandardModules():
76 group = GroupEnum.STDLIB 76 group = GroupEnum.STDLIB
77 elif level > 0: 77 elif level > 0:
78 group = GroupEnum.APPLICATION 78 group = GroupEnum.APPLICATION
79 else: 79 else:
80 group = GroupEnum.THIRD_PARTY 80 group = GroupEnum.THIRD_PARTY

eric ide

mercurial