Skip to content

Commit fe6bd96

Browse files
committed
env vars tests for Python
1 parent 5370c93 commit fe6bd96

File tree

17 files changed

+478
-204
lines changed

17 files changed

+478
-204
lines changed
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import pytest
2+
from e2b_code_interpreter.code_interpreter_async import AsyncSandbox
3+
4+
@pytest.mark.skip_debug()
5+
async def test_env_vars_on_sandbox():
6+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
7+
try:
8+
result = await sandbox.run_code(
9+
"echo $TEST_ENV_VAR",
10+
language="bash"
11+
)
12+
assert result.text is not None
13+
assert result.text.strip() == "supertest"
14+
finally:
15+
await sandbox.kill()
16+
17+
async def test_env_vars_per_execution():
18+
sandbox = await AsyncSandbox.create()
19+
try:
20+
result = await sandbox.run_code(
21+
"echo $FOO",
22+
envs={"FOO": "bar"},
23+
language="bash"
24+
)
25+
26+
result_empty = await sandbox.run_code(
27+
"echo ${FOO:-default}",
28+
language="bash"
29+
)
30+
31+
assert result.text is not None
32+
assert result.text.strip() == "bar"
33+
assert result_empty.text is not None
34+
assert result_empty.text.strip() == "default"
35+
finally:
36+
await sandbox.kill()
37+
38+
@pytest.mark.skip_debug()
39+
async def test_env_vars_overwrite():
40+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
41+
try:
42+
result = await sandbox.run_code(
43+
"echo $TEST_ENV_VAR",
44+
language="bash",
45+
envs={"TEST_ENV_VAR": "overwrite"}
46+
)
47+
assert result.text is not None
48+
assert result.text.strip() == "overwrite"
49+
finally:
50+
await sandbox.kill()
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import pytest
2+
from e2b_code_interpreter.code_interpreter_async import AsyncSandbox
3+
4+
@pytest.mark.skip_debug()
5+
async def test_env_vars_on_sandbox():
6+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
7+
try:
8+
result = await sandbox.run_code(
9+
"const x = Deno.env.get('TEST_ENV_VAR'); x",
10+
language="deno"
11+
)
12+
assert result.text is not None
13+
assert result.text.strip() == "supertest"
14+
finally:
15+
await sandbox.kill()
16+
17+
async def test_env_vars_per_execution():
18+
sandbox = await AsyncSandbox.create()
19+
try:
20+
result = await sandbox.run_code(
21+
"Deno.env.get('FOO')",
22+
envs={"FOO": "bar"},
23+
language="deno"
24+
)
25+
26+
result_empty = await sandbox.run_code(
27+
"Deno.env.get('FOO') || 'default'",
28+
language="deno"
29+
)
30+
31+
assert result.text is not None
32+
assert result.text.strip() == "bar"
33+
assert result_empty.text is not None
34+
assert result_empty.text.strip() == "default"
35+
finally:
36+
await sandbox.kill()
37+
38+
@pytest.mark.skip_debug()
39+
async def test_env_vars_overwrite():
40+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
41+
try:
42+
result = await sandbox.run_code(
43+
"const x = Deno.env.get('TEST_ENV_VAR'); x",
44+
language="deno",
45+
envs={"TEST_ENV_VAR": "overwrite"}
46+
)
47+
assert result.text is not None
48+
assert result.text.strip() == "overwrite"
49+
finally:
50+
await sandbox.kill()
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import pytest
2+
from e2b_code_interpreter.code_interpreter_async import AsyncSandbox
3+
4+
@pytest.mark.skip_debug()
5+
async def test_env_vars_on_sandbox():
6+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
7+
try:
8+
result = await sandbox.run_code(
9+
"String x = System.getenv(\"TEST_ENV_VAR\"); x",
10+
language="java"
11+
)
12+
assert result.text is not None
13+
assert result.text.strip() == "supertest"
14+
finally:
15+
await sandbox.kill()
16+
17+
async def test_env_vars_per_execution():
18+
sandbox = await AsyncSandbox.create()
19+
try:
20+
result = await sandbox.run_code(
21+
"System.getenv(\"FOO\")",
22+
envs={"FOO": "bar"},
23+
language="java"
24+
)
25+
26+
result_empty = await sandbox.run_code(
27+
"String value = System.getenv(\"FOO\"); value != null ? value : \"default\"",
28+
language="java"
29+
)
30+
31+
assert result.text is not None
32+
assert result.text.strip() == "bar"
33+
assert result_empty.text is not None
34+
assert result_empty.text.strip() == "default"
35+
finally:
36+
await sandbox.kill()
37+
38+
@pytest.mark.skip_debug()
39+
async def test_env_vars_overwrite():
40+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
41+
try:
42+
result = await sandbox.run_code(
43+
"String x = System.getenv(\"TEST_ENV_VAR\"); x",
44+
language="java",
45+
envs={"TEST_ENV_VAR": "overwrite"}
46+
)
47+
assert result.text is not None
48+
assert result.text.strip() == "overwrite"
49+
finally:
50+
await sandbox.kill()
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
import pytest
2+
from e2b_code_interpreter.code_interpreter_async import AsyncSandbox
3+
4+
@pytest.mark.skip_debug()
5+
async def test_env_vars_on_sandbox():
6+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
7+
try:
8+
result = await sandbox.run_code(
9+
"process.env.TEST_ENV_VAR",
10+
language="javascript"
11+
)
12+
assert result.text is not None
13+
assert result.text.strip() == "supertest"
14+
finally:
15+
await sandbox.kill()
16+
17+
async def test_env_vars_per_execution():
18+
sandbox = await AsyncSandbox.create()
19+
try:
20+
result = await sandbox.run_code(
21+
"process.env.FOO",
22+
envs={"FOO": "bar"},
23+
language="javascript"
24+
)
25+
26+
result_empty = await sandbox.run_code(
27+
"process.env.FOO || 'default'",
28+
language="javascript"
29+
)
30+
31+
assert result.text is not None
32+
assert result.text.strip() == "bar"
33+
assert result_empty.text is not None
34+
assert result_empty.text.strip() == "default"
35+
finally:
36+
await sandbox.kill()
37+
38+
@pytest.mark.skip_debug()
39+
async def test_env_vars_overwrite():
40+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
41+
try:
42+
result = await sandbox.run_code(
43+
"process.env.TEST_ENV_VAR",
44+
language="javascript",
45+
envs={"TEST_ENV_VAR": "overwrite"}
46+
)
47+
assert result.text is not None
48+
assert result.text.strip() == "overwrite"
49+
finally:
50+
await sandbox.kill()
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import pytest
2+
from e2b_code_interpreter.code_interpreter_async import AsyncSandbox
3+
4+
@pytest.mark.skip_debug()
5+
async def test_env_vars_on_sandbox():
6+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
7+
try:
8+
result = await sandbox.run_code(
9+
"import os; x = os.getenv('TEST_ENV_VAR'); x",
10+
language="python"
11+
)
12+
assert result.text is not None
13+
assert result.text.strip() == "supertest"
14+
finally:
15+
await sandbox.kill()
16+
17+
async def test_env_vars_per_execution():
18+
sandbox = await AsyncSandbox.create()
19+
try:
20+
result = await sandbox.run_code(
21+
"import os; os.getenv('FOO')",
22+
envs={"FOO": "bar"}
23+
)
24+
25+
result_empty = await sandbox.run_code(
26+
"import os; os.getenv('FOO', 'default')",
27+
language="python"
28+
)
29+
30+
assert result.text is not None
31+
assert result.text.strip() == "bar"
32+
assert result_empty.text is not None
33+
assert result_empty.text.strip() == "default"
34+
finally:
35+
await sandbox.kill()
36+
37+
@pytest.mark.skip_debug()
38+
async def test_env_vars_overwrite():
39+
sandbox = await AsyncSandbox.create(envs={"TEST_ENV_VAR": "supertest"})
40+
try:
41+
result = await sandbox.run_code(
42+
"import os; x = os.getenv('TEST_ENV_VAR'); x",
43+
language="python",
44+
envs={"TEST_ENV_VAR": "overwrite"}
45+
)
46+
assert result.text is not None
47+
assert result.text.strip() == "overwrite"
48+
finally:
49+
await sandbox.kill()

0 commit comments

Comments
 (0)