Files
2026-07-13 12:47:58 +08:00

46 lines
994 B
Python

from e2b.sandbox.commands.command_handle import CommandExitException
import pytest
from e2b import Sandbox
class Desktop(Sandbox):
default_template = "desktop"
@staticmethod
def _wrap_pyautogui_code(code: str):
return f"""
import pyautogui
import os
import Xlib.display
display = Xlib.display.Display(os.environ["DISPLAY"])
pyautogui._pyautogui_x11._display = display
{code}
exit(0)
"""
def pyautogui(self, pyautogui_code: str):
code_path = "/home/user/code-4f3a0850-1a83-47b2-8402-67b039a084ae.py"
print(code_path)
code = self._wrap_pyautogui_code(pyautogui_code)
self.files.write(code_path, code)
self.commands.run(f"python {code_path}")
@pytest.mark.skip
def test_envelope_decode():
with Desktop(timeout=30) as desktop:
for _ in range(10):
with pytest.raises(CommandExitException):
desktop.pyautogui(
"""
pyautogui.write("Hello, ")
"""
)