aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/xrtest.rs
diff options
context:
space:
mode:
authorManish Goregaokar <manishsmail@gmail.com>2020-04-08 13:20:19 -0700
committerManish Goregaokar <manishsmail@gmail.com>2020-04-19 11:43:50 -0700
commitd01d9065aaa4e7f316cad21dcbe1d3cf4c3d4652 (patch)
treebd788ce291ea0af7c67da68bb354e780f708ff1a /components/script/dom/xrtest.rs
parent3f88310e23163b34d40fc9a2afa45a825b66ccc5 (diff)
downloadservo-d01d9065aaa4e7f316cad21dcbe1d3cf4c3d4652.tar.gz
servo-d01d9065aaa4e7f316cad21dcbe1d3cf4c3d4652.zip
Add hit test mocking at initialization
Diffstat (limited to 'components/script/dom/xrtest.rs')
-rw-r--r--components/script/dom/xrtest.rs17
1 files changed, 15 insertions, 2 deletions
diff --git a/components/script/dom/xrtest.rs b/components/script/dom/xrtest.rs
index 92f59bc0507..114260b89d9 100644
--- a/components/script/dom/xrtest.rs
+++ b/components/script/dom/xrtest.rs
@@ -13,7 +13,7 @@ use crate::dom::bindings::codegen::Bindings::XRTestBinding::{FakeXRDeviceInit, X
use crate::dom::bindings::refcounted::{Trusted, TrustedPromise};
use crate::dom::bindings::reflector::{reflect_dom_object, DomObject, Reflector};
use crate::dom::bindings::root::{Dom, DomRoot};
-use crate::dom::fakexrdevice::{get_origin, get_views, FakeXRDevice};
+use crate::dom::fakexrdevice::{get_origin, get_views, get_world, FakeXRDevice};
use crate::dom::globalscope::GlobalScope;
use crate::dom::promise::Promise;
use crate::script_thread::ScriptThread;
@@ -106,6 +106,19 @@ impl XRTestMethods for XRTest {
vec![]
};
+ let world = if let Some(ref w) = init.world {
+ let w = match get_world(w) {
+ Ok(w) => w,
+ Err(e) => {
+ p.reject_error(e);
+ return p;
+ },
+ };
+ Some(w)
+ } else {
+ None
+ };
+
let init = MockDeviceInit {
viewer_origin: origin,
views,
@@ -114,7 +127,7 @@ impl XRTestMethods for XRTest {
supports_ar: false,
floor_origin,
supported_features,
- world: None,
+ world,
};
let global = self.global();