diff --git a/python/helpers/pydev/pydev_tests/test_jyserver.py b/python/helpers/pydev/pydev_tests/test_jyserver.py deleted file mode 100644 index 7e7a9f5fb9a5..000000000000 --- a/python/helpers/pydev/pydev_tests/test_jyserver.py +++ /dev/null @@ -1,140 +0,0 @@ -''' -@author Fabio Zadrozny -''' -import sys -import unittest -import socket -import urllib -import pytest -import pycompletionserver - - -IS_JYTHON = sys.platform.find('java') != -1 -DEBUG = 0 - -def dbg(s): - if DEBUG: - sys.stdout.write('TEST %s\n' % s) - -@pytest.mark.skipif(not IS_JYTHON, reason='Jython related test') -class TestJython(unittest.TestCase): - - def test_it(self): - dbg('ok') - - - def test_message(self): - t = pycompletionserver.CompletionServer(0) - t.exit_process_on_kill = False - - l = [] - l.append(('Def', 'description' , 'args')) - l.append(('Def1', 'description1', 'args1')) - l.append(('Def2', 'description2', 'args2')) - - msg = t.processor.format_completion_message('test_jyserver.py', l) - - self.assertEqual('@@COMPLETIONS(test_jyserver.py,(Def,description,args),(Def1,description1,args1),(Def2,description2,args2))END@@', msg) - - l = [] - l.append(('Def', 'desc,,r,,i()ption', '')) - l.append(('Def(1', 'descriptio(n1', '')) - l.append(('De,f)2', 'de,s,c,ription2', '')) - msg = t.processor.format_completion_message(None, l) - expected = '@@COMPLETIONS(None,(Def,desc%2C%2Cr%2C%2Ci%28%29ption, ),(Def%281,descriptio%28n1, ),(De%2Cf%292,de%2Cs%2Cc%2Cription2, ))END@@' - - self.assertEqual(expected, msg) - - - def test_completion_sockets_and_messages(self): - dbg('test_completion_sockets_and_messages') - t, socket = self.create_connections() - self.socket = socket - dbg('connections created') - - try: - #now that we have the connections all set up, check the code completion messages. - msg = urllib.quote_plus('math') - - toWrite = '@@IMPORTS:%sEND@@' % msg - dbg('writing' + str(toWrite)) - socket.send(toWrite) #math completions - completions = self.read_msg() - dbg(urllib.unquote_plus(completions)) - - start = '@@COMPLETIONS(' - self.assertTrue(completions.startswith(start), '%s DOESNT START WITH %s' % (completions, start)) - self.assertTrue(completions.find('@@COMPLETIONS') != -1) - self.assertTrue(completions.find('END@@') != -1) - - - msg = urllib.quote_plus('__builtin__.str') - toWrite = '@@IMPORTS:%sEND@@' % msg - dbg('writing' + str(toWrite)) - socket.send(toWrite) #math completions - completions = self.read_msg() - dbg(urllib.unquote_plus(completions)) - - start = '@@COMPLETIONS(' - self.assertTrue(completions.startswith(start), '%s DOESNT START WITH %s' % (completions, start)) - self.assertTrue(completions.find('@@COMPLETIONS') != -1) - self.assertTrue(completions.find('END@@') != -1) - - - - finally: - try: - self.send_kill_msg(socket) - - - while not t.ended: - pass #wait until it receives the message and quits. - - - socket.close() - except: - pass - - def get_free_port(self): - from _pydev_bundle.pydev_localhost import get_socket_name - return get_socket_name(close=True)[1] - - def create_connections(self): - ''' - Creates the connections needed for testing. - ''' - server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - server.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) - server.bind((pycompletionserver.HOST, 0)) - server.listen(1) #socket to receive messages. - - from thread import start_new_thread - t = pycompletionserver.CompletionServer(server.getsockname()[1]) - t.exit_process_on_kill = False - - start_new_thread(t.run, ()) - - sock, _addr = server.accept() - - return t, sock - - def read_msg(self): - msg = '@@PROCESSING_END@@' - while msg.startswith('@@PROCESSING'): - msg = self.socket.recv(1024) - if msg.startswith('@@PROCESSING:'): - dbg('Status msg:' + str(msg)) - - while msg.find('END@@') == -1: - msg += self.socket.recv(1024) - - return msg - - def send_kill_msg(self, socket): - socket.send(pycompletionserver.MSG_KILL_SERVER) - - - - -# Run for jython in command line: -# c:\bin\jython2.7.0\bin\jython.exe -m py.test tests\test_jyserver.py diff --git a/python/helpers/pydev/pydev_tests/test_jysimpleTipper.py b/python/helpers/pydev/pydev_tests/test_jysimpleTipper.py deleted file mode 100644 index 717e55582f09..000000000000 --- a/python/helpers/pydev/pydev_tests/test_jysimpleTipper.py +++ /dev/null @@ -1,236 +0,0 @@ -import unittest -import os -import sys -import pytest - -# Note: ant.jar and junit.jar must be in the PYTHONPATH - -IS_JYTHON = False -if sys.platform.find('java') != -1: - IS_JYTHON = True - from _pydev_bundle._pydev_jy_imports_tipper import ismethod - from _pydev_bundle._pydev_jy_imports_tipper import isclass - from _pydev_bundle._pydev_jy_imports_tipper import dir_obj - from _pydev_bundle import _pydev_jy_imports_tipper - from java.lang.reflect import Method #@UnresolvedImport - from java.lang import System #@UnresolvedImport - from java.lang import String #@UnresolvedImport - from java.lang.System import arraycopy #@UnresolvedImport - from java.lang.System import out #@UnresolvedImport - import java.lang.String #@UnresolvedImport - import org.python.core.PyDictionary #@UnresolvedImport - - -__DBG = 0 -def dbg(s): - if __DBG: - sys.stdout.write('%s\n' % (s,)) - - - -@pytest.mark.skipif(not IS_JYTHON, reason='Jython related test') -class TestMod(unittest.TestCase): - - def assert_args(self, tok, args, tips): - for a in tips: - if tok == a[0]: - self.assertEqual(args, a[2]) - return - raise AssertionError('%s not in %s', tok, tips) - - def assert_in(self, tok, tips): - self.assertEqual(4, len(tips[0])) - for a in tips: - if tok == a[0]: - return a - s = '' - for a in tips: - s += str(a) - s += '\n' - raise AssertionError('%s not in %s' % (tok, s)) - - def test_imports1a(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('java.util.HashMap') - assert f.endswith('rt.jar') - - def test_imports1c(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('java.lang.Class') - assert f.endswith('rt.jar') - - def test_imports1b(self): - try: - f, tip = _pydev_jy_imports_tipper.generate_tip('__builtin__.m') - self.fail('err') - except: - pass - - def test_imports1(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('junit.framework.TestCase') - assert f.endswith('junit.jar') - ret = self.assert_in('assertEquals', tip) -# self.assertEqual('', ret[2]) - - def test_imports2(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('junit.framework') - assert f.endswith('junit.jar') - ret = self.assert_in('TestCase', tip) - self.assertEqual('', ret[2]) - - def test_imports2a(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('org.apache.tools.ant') - assert f.endswith('ant.jar') - ret = self.assert_in('Task', tip) - self.assertEqual('', ret[2]) - - def test_imports3(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('os') - assert f.endswith('os.py') - ret = self.assert_in('path', tip) - self.assertEqual('', ret[2]) - - def test_tip_on_string(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('string') - self.assert_in('join', tip) - self.assert_in('uppercase', tip) - - def test_imports(self): - tip = _pydev_jy_imports_tipper.generate_tip('__builtin__')[1] - self.assert_in('tuple' , tip) - self.assert_in('RuntimeError' , tip) - self.assert_in('RuntimeWarning' , tip) - - def test_imports5(self): - f, tip = _pydev_jy_imports_tipper.generate_tip('java.lang') - assert f.endswith('rt.jar') - tup = self.assert_in('String' , tip) - self.assertEqual(str(_pydev_jy_imports_tipper.TYPE_CLASS), tup[3]) - - tip = _pydev_jy_imports_tipper.generate_tip('java')[1] - tup = self.assert_in('lang' , tip) - self.assertEqual(str(_pydev_jy_imports_tipper.TYPE_IMPORT), tup[3]) - - tip = _pydev_jy_imports_tipper.generate_tip('java.lang.String')[1] - tup = self.assert_in('indexOf' , tip) - self.assertEqual(str(_pydev_jy_imports_tipper.TYPE_FUNCTION), tup[3]) - - tip = _pydev_jy_imports_tipper.generate_tip('java.lang.String')[1] - tup = self.assert_in('charAt' , tip) - self.assertEqual(str(_pydev_jy_imports_tipper.TYPE_FUNCTION), tup[3]) - self.assertEqual('(int)', tup[2]) - - tup = self.assert_in('format' , tip) - self.assertEqual(str(_pydev_jy_imports_tipper.TYPE_FUNCTION), tup[3]) - self.assertEqual('(string, objectArray)', tup[2]) - self.assertTrue(tup[1].find('[Ljava.lang.Object;') == -1) - - tup = self.assert_in('getBytes', tip) - self.assertEqual(str(_pydev_jy_imports_tipper.TYPE_FUNCTION), tup[3]) - assert '[B' not in tup[1] - assert 'byte[]' in tup[1] - - f, tip = _pydev_jy_imports_tipper.generate_tip('__builtin__.str') - assert f is None or f.endswith('jython.jar') # Depends on jython version - self.assert_in('find' , tip) - - f, tip = _pydev_jy_imports_tipper.generate_tip('__builtin__.dict') - assert f is None or f.endswith('jython.jar') # Depends on jython version - self.assert_in('get' , tip) - - -@pytest.mark.skipif(not IS_JYTHON, reason='Jython related test') -class TestSearch(unittest.TestCase): - - def test_search_on_jython(self): - assert _pydev_jy_imports_tipper.search_definition('os')[0][0].split(os.sep)[-1] in ('javaos.py', 'os.py') - self.assertEqual(0, _pydev_jy_imports_tipper.search_definition('os')[0][1]) - - assert _pydev_jy_imports_tipper.search_definition('os.makedirs')[0][0].split(os.sep)[-1] in ('javaos.py', 'os.py') - self.assertNotEqual(0, _pydev_jy_imports_tipper.search_definition('os.makedirs')[0][1]) - - #print _pydev_jy_imports_tipper.search_definition('os.makedirs') - -@pytest.mark.skipif(not IS_JYTHON, reason='Jython related test') -class TestCompl(unittest.TestCase): - - def test_getting_info_on_jython(self): - - dbg('\n\n--------------------------- java') - assert not ismethod(java)[0] - assert not isclass(java) - assert _pydev_jy_imports_tipper.ismodule(java) - - dbg('\n\n--------------------------- java.lang') - assert not ismethod(java.lang)[0] - assert not isclass(java.lang) - assert _pydev_jy_imports_tipper.ismodule(java.lang) - - dbg('\n\n--------------------------- Method') - assert not ismethod(Method)[0] - assert isclass(Method) - - dbg('\n\n--------------------------- System') - assert not ismethod(System)[0] - assert isclass(System) - - dbg('\n\n--------------------------- String') - assert not ismethod(System)[0] - assert isclass(String) - assert len(dir_obj(String)) > 10 - - dbg('\n\n--------------------------- arraycopy') - isMet = ismethod(arraycopy) - assert isMet[0] - assert isMet[1][0].basic_as_str() == "function:arraycopy args=['java.lang.Object', 'int', 'java.lang.Object', 'int', 'int'], varargs=None, kwargs=None, docs:None" - assert not isclass(arraycopy) - - dbg('\n\n--------------------------- out') - isMet = ismethod(out) - assert not isMet[0] - assert not isclass(out) - - dbg('\n\n--------------------------- out.println') - isMet = ismethod(out.println) #@UndefinedVariable - assert isMet[0] - assert len(isMet[1]) == 10 - self.assertEqual(isMet[1][0].basic_as_str(), "function:println args=[], varargs=None, kwargs=None, docs:None") - assert isMet[1][1].basic_as_str() == "function:println args=['long'], varargs=None, kwargs=None, docs:None" - assert not isclass(out.println) #@UndefinedVariable - - dbg('\n\n--------------------------- str') - isMet = ismethod(str) - #the code below should work, but is failing on jython 22a1 - #assert isMet[0] - #assert isMet[1][0].basic_as_str() == "function:str args=['org.python.core.PyObject'], varargs=None, kwargs=None, docs:None" - assert not isclass(str) - - - def met1(): - a = 3 - return a - - dbg('\n\n--------------------------- met1') - isMet = ismethod(met1) - assert isMet[0] - assert isMet[1][0].basic_as_str() == "function:met1 args=[], varargs=None, kwargs=None, docs:None" - assert not isclass(met1) - - def met2(arg1, arg2, *vararg, **kwarg): - '''docmet2''' - - a = 1 - return a - - dbg('\n\n--------------------------- met2') - isMet = ismethod(met2) - assert isMet[0] - assert isMet[1][0].basic_as_str() == "function:met2 args=['arg1', 'arg2'], varargs=vararg, kwargs=kwarg, docs:docmet2" - assert not isclass(met2) - - -# Run for jython in command line: - -# On Windows: -# c:/bin/jython2.7.0/bin/jython.exe -Dpython.path=<...>/ant.jar;<...>/junit.jar -m py.test tests/test_jysimpleTipper.py - -# On Linux (different path separator for jars) -# jython -Dpython.path=<...>/ant.jar:<...>/junit.jar -m py.test tests/test_jysimpleTipper.py diff --git a/python/helpers/pydev/pydev_tests/test_pyserver.py b/python/helpers/pydev/pydev_tests/test_pyserver.py index 9cd332a5e514..4cbf7aae1394 100644 --- a/python/helpers/pydev/pydev_tests/test_pyserver.py +++ b/python/helpers/pydev/pydev_tests/test_pyserver.py @@ -89,7 +89,6 @@ class TestCPython(unittest.TestCase): return msg - @pytest.mark.xfail(IS_PY39_OR_GREATER, reason="PCQA-731") def test_completion_sockets_and_messages(self): t, socket = self.create_connections() self.socket = socket @@ -107,10 +106,7 @@ class TestCPython(unittest.TestCase): if ('/math.so,' in completions or '/math.cpython-33m.so,' in completions or '/math.cpython-34m.so,' in completions or - 'math.cpython-35m' in completions or - 'math.cpython-36m' in completions or - 'math.cpython-37m' in completions or - 'math.cpython-38' in completions + 'math.cpython' in completions ): return self.assertTrue(completions.startswith(start) or completions.startswith(start_2), '%s DOESNT START WITH %s' % (completions, (start, start_2))) diff --git a/python/helpers/pydev/pydev_tests_python/test_debugger.py b/python/helpers/pydev/pydev_tests_python/test_debugger.py index 08adf50fc57e..988970c6508b 100644 --- a/python/helpers/pydev/pydev_tests_python/test_debugger.py +++ b/python/helpers/pydev/pydev_tests_python/test_debugger.py @@ -673,7 +673,6 @@ def test_case_15(case_setup): writer.finished_ok = True -@pytest.mark.xfail(reason="PCQA-702") def test_case_16(case_setup): # numpy.ndarray resolver try: @@ -693,19 +692,19 @@ def test_case_16(case_setup): writer.write_get_frame(hit.thread_id, hit.frame_id) writer.wait_for_multiple_vars(( ( - '', - '' + '', - '' + '', - '' + ''.format(builtin_qualifier), - ''.format(builtin_qualifier), - ''.format(builtin_qualifier), - ''.format(builtin_qualifier), + ''.format(builtin_qualifier), - ''.format(builtin_qualifier), - ''.format(builtin_qualifier), - ''.format(builtin_qualifier), + '