Warning
This documentation is actively being updated as the project evolves and may not be complete in all areas.
Network drivers¶
jumpstarter-driver-network
provides functionality for interacting with network servers and connections.
Installation¶
pip install jumpstarter-driver-network
Configuration¶
Example configuration:
export:
network:
type: jumpstarter_driver_network.driver.TcpNetwork
config:
# Add required parameters here
API Reference¶
Network driver classes:
- class jumpstarter_driver_network.driver.TcpNetwork¶
TcpNetwork is a driver for connecting to TCP sockets
>>> addr = getfixture("tcp_echo_server") # start a tcp echo server >>> config = f""" ... type: jumpstarter_driver_network.driver.TcpNetwork ... config: ... host: {addr[0]} # 127.0.0.1 ... port: {addr[1]} # random port ... """ >>> with run(config) as tcp: ... with tcp.stream() as conn: ... conn.send(b"hello") ... assert conn.receive() == b"hello"
- class jumpstarter_driver_network.driver.UdpNetwork¶
UdpNetwork is a driver for connecting to UDP sockets
>>> config = f""" ... type: jumpstarter_driver_network.driver.UdpNetwork ... config: ... host: 127.0.0.1 ... port: 41336 ... """ >>> with run(config) as udp: ... pass
- class jumpstarter_driver_network.driver.UnixNetwork¶
UnixNetwork is a driver for connecting to Unix domain sockets
>>> config = f""" ... type: jumpstarter_driver_network.driver.UnixNetwork ... config: ... path: /tmp/example.sock ... """ >>> with run(config) as unix: ... pass
- class jumpstarter_driver_network.driver.EchoNetwork¶
EchoNetwork is a mock driver implementing the NetworkInterface
>>> config = """ ... type: jumpstarter_driver_network.driver.EchoNetwork ... """ >>> with run(config) as echo: ... with echo.stream() as conn: ... conn.send(b"hello") ... assert conn.receive() == b"hello"
Client API:
- class jumpstarter_driver_network.client.NetworkClient¶