mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2025-12-16 01:30:07 +01:00
ignore newline added by Tokenize module since Python 3.6 (fixes #1109)
This commit is contained in:
21
unittests/test_py_introspect.py
Normal file
21
unittests/test_py_introspect.py
Normal file
@@ -0,0 +1,21 @@
|
||||
import sys
|
||||
import unittest
|
||||
|
||||
import wx.py.introspect as inrspct
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class py_introspect_Tests(unittest.TestCase):
|
||||
|
||||
def test_getAutoCompleteList(self):
|
||||
# introspect is expecting this! usually inited by wx.py.interpreter
|
||||
sys.ps2 = '... '
|
||||
attributes = inrspct.getAutoCompleteList("wx.")
|
||||
self.assertTrue(len(attributes) > 100)
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
@@ -228,11 +228,12 @@ def getRoot(command, terminator=None):
|
||||
command = rtrimTerminus(command, terminator)
|
||||
if terminator == '.':
|
||||
tokens = getTokens(command)
|
||||
if not tokens:
|
||||
return ''
|
||||
if tokens[-1][0] is tokenize.ENDMARKER:
|
||||
if tokens and tokens[-1][0] is tokenize.ENDMARKER:
|
||||
# Remove the end marker.
|
||||
del tokens[-1]
|
||||
if tokens and tokens[-1][0] is tokenize.NEWLINE:
|
||||
# Remove newline.
|
||||
del tokens[-1]
|
||||
if not tokens:
|
||||
return ''
|
||||
if terminator == '.' and \
|
||||
@@ -258,7 +259,7 @@ def getRoot(command, terminator=None):
|
||||
tokentype = token[0]
|
||||
tokenstring = token[1]
|
||||
line = token[4]
|
||||
if tokentype is tokenize.ENDMARKER:
|
||||
if tokentype in (tokenize.ENDMARKER, tokenize.NEWLINE):
|
||||
continue
|
||||
if PY3 and tokentype is tokenize.ENCODING:
|
||||
line = lastline
|
||||
|
||||
Reference in New Issue
Block a user