18 lines
499 B
Python
18 lines
499 B
Python
from e2b import Sandbox
|
|
from e2b.sandbox.commands.command_handle import PtySize
|
|
|
|
|
|
def test_pty(sandbox: Sandbox):
|
|
def append_data(data: list, x: bytes):
|
|
data.append(x.decode("utf-8"))
|
|
|
|
terminal = sandbox.pty.create(PtySize(80, 24), envs={"ABC": "123"}, cwd="/")
|
|
|
|
sandbox.pty.send_stdin(terminal.pid, b"echo $ABC\nexit\n")
|
|
|
|
output = []
|
|
result = terminal.wait(on_pty=lambda x: append_data(output, x))
|
|
assert result.exit_code == 0
|
|
|
|
assert "123" in "\n".join(output)
|