summaryrefslogtreecommitdiff
path: root/cli/tests/integration/repl_tests.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests/integration/repl_tests.rs')
-rw-r--r--cli/tests/integration/repl_tests.rs42
1 files changed, 42 insertions, 0 deletions
diff --git a/cli/tests/integration/repl_tests.rs b/cli/tests/integration/repl_tests.rs
index 5335cf964..a6524f718 100644
--- a/cli/tests/integration/repl_tests.rs
+++ b/cli/tests/integration/repl_tests.rs
@@ -872,6 +872,48 @@ fn repl_with_quiet_flag() {
}
#[test]
+fn repl_unit_tests() {
+ util::with_pty(&["repl"], |mut console| {
+ console.write_line(
+ "\
+ console.log('Hello from outside of test!'); \
+ Deno.test('test1', async (t) => { \
+ console.log('Hello from inside of test!'); \
+ await t.step('step1', () => {}); \
+ }); \
+ Deno.test('test2', () => { \
+ throw new Error('some message'); \
+ }); \
+ console.log('Hello again from outside of test!'); \
+ ",
+ );
+
+ console.expect("Hello from outside of test!");
+ console.expect("Hello again from outside of test!");
+ // FIXME(nayeemrmn): REPL unit tests don't support output capturing.
+ console.expect("Hello from inside of test!");
+ console.expect("test1 ...");
+ console.expect(" step1 ... ok (");
+ console.expect("test1 ... ok (");
+ console.expect("test2 ... FAILED (");
+ console.expect(" ERRORS ");
+ console.expect("test2 => <anonymous>:7:6");
+ console.expect("error: Error: some message");
+ console.expect(" at <anonymous>:8:9");
+ console.expect(" FAILURES ");
+ console.expect("test2 => <anonymous>:7:6");
+ console.expect("FAILED | 1 passed (1 step) | 1 failed (");
+ console.expect("undefined");
+
+ console.write_line("Deno.test('test2', () => {});");
+
+ console.expect("test2 ... ok (");
+ console.expect("ok | 1 passed | 0 failed (");
+ console.expect("undefined");
+ });
+}
+
+#[test]
fn npm_packages() {
let mut env_vars = util::env_vars_for_npm_tests();
env_vars.push(("NO_COLOR".to_owned(), "1".to_owned()));