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

49 lines
1.4 KiB
Python

from e2b.template.readycmd import (
wait_for_file,
wait_for_port,
wait_for_process,
wait_for_timeout,
wait_for_url,
)
def test_wait_for_port_matches_the_exact_listening_port():
cmd = wait_for_port(80).get_cmd()
assert cmd == '[ -n "$(ss -Htuln sport = :80)" ]'
def test_wait_for_url_quotes_the_url():
cmd = wait_for_url("http://localhost:3000/health?ready=1&x=y").get_cmd()
assert cmd == (
'curl -s -o /dev/null -w "%{http_code}" '
"'http://localhost:3000/health?ready=1&x=y' | grep -q \"200\""
)
def test_wait_for_url_keeps_simple_urls_unquoted():
cmd = wait_for_url("http://localhost:3000/health").get_cmd()
assert cmd == (
'curl -s -o /dev/null -w "%{http_code}" '
'http://localhost:3000/health | grep -q "200"'
)
def test_wait_for_process_quotes_the_process_name():
cmd = wait_for_process("my daemon").get_cmd()
assert cmd == "pgrep 'my daemon' > /dev/null"
def test_wait_for_file_quotes_the_filename():
cmd = wait_for_file("/tmp/ready file").get_cmd()
assert cmd == "[ -f '/tmp/ready file' ]"
def test_wait_for_file_keeps_simple_paths_unquoted():
cmd = wait_for_file("/tmp/ready").get_cmd()
assert cmd == "[ -f /tmp/ready ]"
def test_wait_for_timeout_converts_milliseconds_to_seconds():
assert wait_for_timeout(5000).get_cmd() == "sleep 5"
assert wait_for_timeout(100).get_cmd() == "sleep 1"