Try to fix tests failing on CI

This commit is contained in:
Kovid Goyal 2022-02-21 14:24:08 +05:30
parent 63f974531b
commit b9684879e7
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
2 changed files with 10 additions and 5 deletions

View File

@ -129,6 +129,12 @@ class BaseTest(TestCase):
set_options(options)
return options
def cmd_to_run_python_code(self, code):
cmd = [sys.executable]
cmd.append('-c' if 'python' in sys.executable.lower() else '+runpy')
cmd.append(code)
return cmd
def create_screen(self, cols=5, lines=5, scrollback=5, cell_width=10, cell_height=20, options=None):
self.set_options(options)
c = Callbacks()
@ -178,7 +184,7 @@ class PTY:
def write_to_child(self, data):
write_all(self.master_fd, data)
def wait_for_input_from_child(self, timeout=2):
def wait_for_input_from_child(self, timeout=10):
rd = select.select([self.master_fd], [], [], timeout)[0]
return bool(rd)

View File

@ -3,7 +3,6 @@
import os
import sys
from kittens.ssh.main import get_connection_data
from kitty.utils import SSHConnectionData
@ -18,14 +17,14 @@ class SSHTest(BaseTest):
self.assertTrue(pty.wait_for_input_from_child())
pty.process_input_from_child()
self.ae(pty.screen_contents(), 'hello')
pty = self.create_pty([sys.executable, '-c', '''\
pty = self.create_pty(self.cmd_to_run_python_code('''\
import array, fcntl, sys, termios
buf = array.array('H', [0, 0, 0, 0])
fcntl.ioctl(sys.stdout, termios.TIOCGWINSZ, buf)
print(' '.join(map(str, buf)))'''], lines=13, cols=17)
print(' '.join(map(str, buf)))'''), lines=13, cols=77)
self.assertTrue(pty.wait_for_input_from_child())
pty.process_input_from_child()
self.ae(pty.screen_contents(), '13 17 0 0')
self.ae(pty.screen_contents(), '13 77 0 0')
def test_ssh_connection_data(self):
def t(cmdline, binary='ssh', host='main', port=None, identity_file=''):