summaryrefslogtreecommitdiff
path: root/cli/tests
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests')
-rw-r--r--cli/tests/integration/eval_tests.rs13
-rw-r--r--cli/tests/integration/repl_tests.rs16
-rw-r--r--cli/tests/integration/run_tests.rs13
-rw-r--r--cli/tests/testdata/env4
-rw-r--r--cli/tests/testdata/run/env_file.out4
-rw-r--r--cli/tests/testdata/run/env_file.ts3
6 files changed, 53 insertions, 0 deletions
diff --git a/cli/tests/integration/eval_tests.rs b/cli/tests/integration/eval_tests.rs
index df2362c7f..99a0d674f 100644
--- a/cli/tests/integration/eval_tests.rs
+++ b/cli/tests/integration/eval_tests.rs
@@ -77,3 +77,16 @@ itest!(check_local_by_default2 {
output: "eval/check_local_by_default2.out",
http_server: true,
});
+
+itest!(env_file {
+ args: "eval --env=env console.log(Deno.env.get(\"ANOTHER_FOO\"))",
+ output_str: Some("ANOTHER_BAR\n"),
+});
+
+itest!(env_file_missing {
+ args: "eval --env=missing console.log(Deno.env.get(\"ANOTHER_FOO\"))",
+ output_str: Some(
+ "error: Unable to load 'missing' environment variable file\n"
+ ),
+ exit_code: 1,
+});
diff --git a/cli/tests/integration/repl_tests.rs b/cli/tests/integration/repl_tests.rs
index 1cdc625b2..fe075d37c 100644
--- a/cli/tests/integration/repl_tests.rs
+++ b/cli/tests/integration/repl_tests.rs
@@ -1058,3 +1058,19 @@ fn closed_file_pre_load_does_not_occur() {
assert_contains!(console.all_output(), "Skipping document preload.",);
});
}
+
+#[test]
+fn env_file() {
+ TestContext::default()
+ .new_command()
+ .args_vec([
+ "repl",
+ "--env=env",
+ "--allow-env",
+ "--eval",
+ "console.log(Deno.env.get('FOO'))",
+ ])
+ .with_pty(|console| {
+ assert_contains!(console.all_output(), "BAR",);
+ });
+}
diff --git a/cli/tests/integration/run_tests.rs b/cli/tests/integration/run_tests.rs
index f70925289..64df31818 100644
--- a/cli/tests/integration/run_tests.rs
+++ b/cli/tests/integration/run_tests.rs
@@ -808,6 +808,19 @@ fn permissions_cache() {
});
}
+itest!(env_file {
+ args: "run --env=env --allow-env run/env_file.ts",
+ output: "run/env_file.out",
+});
+
+itest!(env_file_missing {
+ args: "run --env=missing --allow-env run/env_file.ts",
+ output_str: Some(
+ "error: Unable to load 'missing' environment variable file\n"
+ ),
+ exit_code: 1,
+});
+
itest!(_091_use_define_for_class_fields {
args: "run --check run/091_use_define_for_class_fields.ts",
output: "run/091_use_define_for_class_fields.ts.out",
diff --git a/cli/tests/testdata/env b/cli/tests/testdata/env
new file mode 100644
index 000000000..c41732d30
--- /dev/null
+++ b/cli/tests/testdata/env
@@ -0,0 +1,4 @@
+FOO=BAR
+ANOTHER_FOO=ANOTHER_${FOO}
+MULTILINE="First Line
+Second Line" \ No newline at end of file
diff --git a/cli/tests/testdata/run/env_file.out b/cli/tests/testdata/run/env_file.out
new file mode 100644
index 000000000..54a0bf25d
--- /dev/null
+++ b/cli/tests/testdata/run/env_file.out
@@ -0,0 +1,4 @@
+BAR
+ANOTHER_BAR
+First Line
+Second Line
diff --git a/cli/tests/testdata/run/env_file.ts b/cli/tests/testdata/run/env_file.ts
new file mode 100644
index 000000000..48488ce72
--- /dev/null
+++ b/cli/tests/testdata/run/env_file.ts
@@ -0,0 +1,3 @@
+console.log(Deno.env.get("FOO"));
+console.log(Deno.env.get("ANOTHER_FOO"));
+console.log(Deno.env.get("MULTILINE"));