refactor(bundler): Improve test suite (#3144)

This commit is contained in:
Donny/강동윤 2021-12-29 19:19:44 +09:00 committed by GitHub
parent bf820b7937
commit 8a1016fb40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 37 additions and 24 deletions

1
.gitmodules vendored
View File

@ -2,3 +2,4 @@
path = crates/swc_ecma_parser/tests/test262-parser
url = https://github.com/tc39/test262-parser-tests.git
shallow = true
ignore = dirty

View File

@ -6,12 +6,7 @@
use self::common::*;
use anyhow::Error;
use ntest::timeout;
use std::{
collections::HashMap,
fs::write,
path::PathBuf,
process::{Command, Stdio},
};
use std::{collections::HashMap, fs::write, path::PathBuf, process::Command};
use swc_atoms::js_word;
use swc_bundler::{Bundler, Load, ModuleRecord};
use swc_common::{collections::AHashSet, FileName, Mark, Span, GLOBALS};
@ -1011,15 +1006,18 @@ fn run(url: &str, exports: &[&str]) {
.arg("run")
.arg("--no-check")
.arg(&path)
.stdout(Stdio::inherit())
.stderr(Stdio::inherit())
.status()
.unwrap();
.output()
.expect("failed to get output from deno");
std::mem::forget(dir);
if !output.status.success() {
std::mem::forget(dir);
dbg!(output);
assert!(output.success());
panic!(
"failed to execute:\n{}\n{}",
String::from_utf8_lossy(&output.stdout),
String::from_utf8_lossy(&output.stderr)
)
}
}
fn bundle(url: &str, minify: bool) -> String {
@ -1211,14 +1209,18 @@ fn exec(input: PathBuf) {
.arg("--no-check")
.arg("--allow-net")
.arg(&path)
.stdout(Stdio::inherit())
.stderr(Stdio::inherit())
.status()
.output()
.unwrap();
std::mem::forget(dir);
if !output.status.success() {
std::mem::forget(dir);
assert!(output.success());
panic!(
"failed to execute:\n{}\n{}",
String::from_utf8_lossy(&output.stdout),
String::from_utf8_lossy(&output.stderr)
)
}
}
#[testing::fixture("tests/deno-exec/**/entry.ts")]
@ -1252,12 +1254,16 @@ fn exec_minified(input: PathBuf) {
.arg("--no-check")
.arg("--allow-net")
.arg(&path)
.stdout(Stdio::inherit())
.stderr(Stdio::inherit())
.status()
.output()
.unwrap();
std::mem::forget(dir);
if !output.status.success() {
std::mem::forget(dir);
assert!(output.success());
panic!(
"failed to execute:\n{}\n{}",
String::from_utf8_lossy(&output.stdout),
String::from_utf8_lossy(&output.stderr)
)
}
}

View File

@ -0,0 +1,3 @@
import * as mongo from "https://deno.land/x/mongo@v0.27.0/mod.ts";
import MongoClient = mongo.MongoClient;
const mongoClient = new MongoClient();

View File

@ -0,0 +1,3 @@
import * as mongo from "https://deno.land/x/mongo@v0.27.0/mod.ts";
var MongoClient = mongo.MongoClient;
const mongoClient = new MongoClient();

View File

@ -1,4 +1,4 @@
#!/usr/bin/env bash
#!/usr/bin/env zsh
set -eu
find . -type d -empty -delete