2019-09-15 18:36:27 -04:00
|
|
|
pub const TS_VERSION: &str = env!("TS_VERSION");
|
|
|
|
|
2019-09-02 17:07:11 -04:00
|
|
|
pub static CLI_SNAPSHOT: &[u8] =
|
|
|
|
include_bytes!(concat!(env!("OUT_DIR"), "/CLI_SNAPSHOT.bin"));
|
|
|
|
pub static CLI_SNAPSHOT_MAP: &[u8] =
|
|
|
|
include_bytes!(concat!(env!("OUT_DIR"), "/CLI_SNAPSHOT.js.map"));
|
2019-10-04 20:28:51 -04:00
|
|
|
#[allow(dead_code)]
|
2019-09-02 17:07:11 -04:00
|
|
|
pub static CLI_SNAPSHOT_DTS: &[u8] =
|
|
|
|
include_bytes!(concat!(env!("OUT_DIR"), "/CLI_SNAPSHOT.d.ts"));
|
|
|
|
|
|
|
|
pub static COMPILER_SNAPSHOT: &[u8] =
|
|
|
|
include_bytes!(concat!(env!("OUT_DIR"), "/COMPILER_SNAPSHOT.bin"));
|
|
|
|
pub static COMPILER_SNAPSHOT_MAP: &[u8] =
|
|
|
|
include_bytes!(concat!(env!("OUT_DIR"), "/COMPILER_SNAPSHOT.js.map"));
|
2019-10-04 20:28:51 -04:00
|
|
|
#[allow(dead_code)]
|
2019-09-02 17:07:11 -04:00
|
|
|
pub static COMPILER_SNAPSHOT_DTS: &[u8] =
|
|
|
|
include_bytes!(concat!(env!("OUT_DIR"), "/COMPILER_SNAPSHOT.d.ts"));
|
|
|
|
|
2019-10-04 20:28:51 -04:00
|
|
|
static DENO_RUNTIME: &str = include_str!("js/lib.deno_runtime.d.ts");
|
2019-09-15 18:36:27 -04:00
|
|
|
|
|
|
|
/// Same as deno_typescript::get_asset but also has lib.deno_runtime.d.ts
|
|
|
|
pub fn get_asset(name: &str) -> Option<&'static str> {
|
|
|
|
match name {
|
|
|
|
"lib.deno_runtime.d.ts" => Some(DENO_RUNTIME),
|
|
|
|
_ => deno_typescript::get_asset(name),
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-09-02 17:07:11 -04:00
|
|
|
#[test]
|
|
|
|
fn cli_snapshot() {
|
2020-01-08 09:06:04 -05:00
|
|
|
let mut isolate = deno_core::Isolate::new(
|
2020-01-05 11:56:18 -05:00
|
|
|
deno_core::StartupData::Snapshot(CLI_SNAPSHOT),
|
|
|
|
false,
|
|
|
|
);
|
|
|
|
deno_core::js_check(isolate.execute(
|
2019-09-02 17:07:11 -04:00
|
|
|
"<anon>",
|
|
|
|
r#"
|
|
|
|
if (!window) {
|
|
|
|
throw Error("bad");
|
|
|
|
}
|
|
|
|
console.log("we have console.log!!!");
|
|
|
|
"#,
|
|
|
|
));
|
|
|
|
}
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn compiler_snapshot() {
|
2020-01-08 09:06:04 -05:00
|
|
|
let mut isolate = deno_core::Isolate::new(
|
2020-01-05 11:56:18 -05:00
|
|
|
deno_core::StartupData::Snapshot(COMPILER_SNAPSHOT),
|
|
|
|
false,
|
|
|
|
);
|
|
|
|
deno_core::js_check(isolate.execute(
|
2019-09-02 17:07:11 -04:00
|
|
|
"<anon>",
|
|
|
|
r#"
|
|
|
|
if (!compilerMain) {
|
|
|
|
throw Error("bad");
|
|
|
|
}
|
|
|
|
console.log(`ts version: ${ts.version}`);
|
|
|
|
"#,
|
|
|
|
));
|
|
|
|
}
|