summaryrefslogtreecommitdiff
path: root/cli/tests/integration/repl_tests.rs
diff options
context:
space:
mode:
authorDavid Sherret <dsherret@users.noreply.github.com>2021-12-15 13:23:43 -0500
committerGitHub <noreply@github.com>2021-12-15 13:23:43 -0500
commit6c324acf2363e88293ab94cf3de6c9d7a264b55d (patch)
treeb0d7c8752bf7e7b471be4a50e65572d501bb8b5a /cli/tests/integration/repl_tests.rs
parenta1f0796fccfafee19b2fe06155efe746da2e9654 (diff)
feat: REPL import specifier auto-completions (#13078)
Diffstat (limited to 'cli/tests/integration/repl_tests.rs')
-rw-r--r--cli/tests/integration/repl_tests.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/cli/tests/integration/repl_tests.rs b/cli/tests/integration/repl_tests.rs
index 18e022cfe..c98afd6d5 100644
--- a/cli/tests/integration/repl_tests.rs
+++ b/cli/tests/integration/repl_tests.rs
@@ -123,6 +123,44 @@ fn pty_complete_primitives() {
}
#[test]
+fn pty_complete_imports() {
+ util::with_pty(&["repl"], |mut console| {
+ // single quotes
+ console.write_line("import './001_hel\t'");
+ // double quotes
+ console.write_line("import { output } from \"./045_out\t\"");
+ console.write_line("output('testing output');");
+ console.write_line("close();");
+
+ let output = console.read_all_output();
+ assert!(output.contains("Hello World"));
+ assert!(output.contains("\ntesting output"));
+ });
+
+ // ensure when the directory changes that the suggestions come from the cwd
+ util::with_pty(&["repl"], |mut console| {
+ console.write_line("Deno.chdir('./subdir');");
+ console.write_line("import '../001_hel\t'");
+ console.write_line("close();");
+
+ let output = console.read_all_output();
+ assert!(output.contains("Hello World"));
+ });
+
+ // ensure nothing too bad happens when deleting the cwd
+ util::with_pty(&["repl"], |mut console| {
+ console.write_line("Deno.mkdirSync('./temp-repl-lsp-dir');");
+ console.write_line("Deno.chdir('./temp-repl-lsp-dir');");
+ console.write_line("Deno.removeSync('../temp-repl-lsp-dir');");
+ console.write_line("import '../001_hello\t'");
+ console.write_line("close();");
+
+ let output = console.read_all_output();
+ assert!(output.contains("Hello World"));
+ });
+}
+
+#[test]
fn pty_ignore_symbols() {
util::with_pty(&["repl"], |mut console| {
console.write_line("Array.Symbol\t");