Coverage for /home/fedora/jumpstarter/packages/jumpstarter-driver-network/jumpstarter_driver_network/adapters/pexpect.py: 54%
13 statements
« prev ^ index » next coverage.py v7.8.0, created at 2025-05-05 20:29 +0000
« prev ^ index » next coverage.py v7.8.0, created at 2025-05-05 20:29 +0000
1import socket
2from contextlib import contextmanager
4from pexpect.fdpexpect import fdspawn
6from .portforward import TcpPortforwardAdapter
7from jumpstarter.client import DriverClient
10@contextmanager
11def PexpectAdapter(*, client: DriverClient, method: str = "connect"):
12 with TcpPortforwardAdapter(client=client, method=method) as addr:
13 sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
14 sock.connect(addr)
16 try:
17 yield fdspawn(sock)
18 finally:
19 sock.close()