summaryrefslogtreecommitdiff
path: root/core/modules.rs
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2020-09-11 15:18:49 +0200
committerGitHub <noreply@github.com>2020-09-11 15:18:49 +0200
commit0d1f626edd7c574ff0e70438cdb678dcb5c91170 (patch)
tree8d80e4f32ba9535da4c387234b795385ee2f6492 /core/modules.rs
parent7c2e7c660804afca823d60e6496aa853f75db16c (diff)
refactor(core): JsRuntime initialization (#7415)
Removes: - "deno_core::StartupData" - "deno_core::Script" - "deno_core::OwnedScript" Changes to "JsRuntime": - remove "new_with_loader()" - remove "with_heap_limits()" - rename "IsolateOptions" to "RuntimeOptions" and make public - "JsRuntime::new()" takes "RuntimeOptions" as a single param
Diffstat (limited to 'core/modules.rs')
-rw-r--r--core/modules.rs38
1 files changed, 25 insertions, 13 deletions
diff --git a/core/modules.rs b/core/modules.rs
index 57068528d..eae2a8d9f 100644
--- a/core/modules.rs
+++ b/core/modules.rs
@@ -442,7 +442,7 @@ mod tests {
use super::*;
use crate::js_check;
use crate::JsRuntime;
- use crate::StartupData;
+ use crate::RuntimeOptions;
use futures::future::FutureExt;
use std::error::Error;
use std::fmt;
@@ -619,8 +619,10 @@ mod tests {
fn test_recursive_load() {
let loader = MockLoader::new();
let loads = loader.loads.clone();
- let mut runtime =
- JsRuntime::new_with_loader(loader, StartupData::None, false);
+ let mut runtime = JsRuntime::new(RuntimeOptions {
+ module_loader: Some(loader),
+ ..Default::default()
+ });
let spec = ModuleSpecifier::resolve_url("file:///a.js").unwrap();
let a_id_fut = runtime.load_module(&spec, None);
let a_id = futures::executor::block_on(a_id_fut).expect("Failed to load");
@@ -682,8 +684,10 @@ mod tests {
fn test_circular_load() {
let loader = MockLoader::new();
let loads = loader.loads.clone();
- let mut runtime =
- JsRuntime::new_with_loader(loader, StartupData::None, false);
+ let mut runtime = JsRuntime::new(RuntimeOptions {
+ module_loader: Some(loader),
+ ..Default::default()
+ });
let fut = async move {
let spec = ModuleSpecifier::resolve_url("file:///circular1.js").unwrap();
@@ -756,8 +760,10 @@ mod tests {
fn test_redirect_load() {
let loader = MockLoader::new();
let loads = loader.loads.clone();
- let mut runtime =
- JsRuntime::new_with_loader(loader, StartupData::None, false);
+ let mut runtime = JsRuntime::new(RuntimeOptions {
+ module_loader: Some(loader),
+ ..Default::default()
+ });
let fut = async move {
let spec = ModuleSpecifier::resolve_url("file:///redirect1.js").unwrap();
@@ -821,8 +827,10 @@ mod tests {
run_in_task(|mut cx| {
let loader = MockLoader::new();
let loads = loader.loads.clone();
- let mut runtime =
- JsRuntime::new_with_loader(loader, StartupData::None, false);
+ let mut runtime = JsRuntime::new(RuntimeOptions {
+ module_loader: Some(loader),
+ ..Default::default()
+ });
let spec = ModuleSpecifier::resolve_url("file:///main.js").unwrap();
let mut recursive_load = runtime.load_module(&spec, None).boxed_local();
@@ -867,8 +875,10 @@ mod tests {
fn loader_disappears_after_error() {
run_in_task(|mut cx| {
let loader = MockLoader::new();
- let mut runtime =
- JsRuntime::new_with_loader(loader, StartupData::None, false);
+ let mut runtime = JsRuntime::new(RuntimeOptions {
+ module_loader: Some(loader),
+ ..Default::default()
+ });
let spec = ModuleSpecifier::resolve_url("file:///bad_import.js").unwrap();
let mut load_fut = runtime.load_module(&spec, None).boxed_local();
let result = load_fut.poll_unpin(&mut cx);
@@ -896,8 +906,10 @@ mod tests {
fn recursive_load_main_with_code() {
let loader = MockLoader::new();
let loads = loader.loads.clone();
- let mut runtime =
- JsRuntime::new_with_loader(loader, StartupData::None, false);
+ let mut runtime = JsRuntime::new(RuntimeOptions {
+ module_loader: Some(loader),
+ ..Default::default()
+ });
// In default resolution code should be empty.
// Instead we explicitly pass in our own code.
// The behavior should be very similar to /a.js.