Index: third_party/WebKit/LayoutTests/imported/wpt/workers/semantics/interface-objects/004.html |
diff --git a/third_party/WebKit/LayoutTests/imported/wpt/workers/semantics/interface-objects/004.html b/third_party/WebKit/LayoutTests/imported/wpt/workers/semantics/interface-objects/004.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2e4387ede3c5bf1e2f1fdc76a40a84d81fada85c |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/imported/wpt/workers/semantics/interface-objects/004.html |
@@ -0,0 +1,73 @@ |
+<!-- |
+onconnect = function(e) { |
+ var unexpected = [ |
+ // https://html.spec.whatwg.org/ |
+ "DedicatedWorkerGlobalScope", |
+ "AbstractView", |
+ "AbstractWorker", |
+ "Location", |
+ "Navigator", |
+ "DOMImplementation", |
+ "Audio", |
+ "HTMLCanvasElement", |
+ "Path", |
+ "TextMetrics", |
+ "CanvasProxy", |
+ "CanvasRenderingContext2D", |
+ "DrawingStyle", |
+ "CanvasGradient", |
+ "CanvasPattern", |
+ "PopStateEvent", |
+ "HashChangeEvent", |
+ "PageTransitionEvent", |
+ // https://streams.spec.whatwg.org/ |
+ "ReadableStreamDefaultReader", |
+ "ReadableStreamBYOBReader", |
+ "ReadableStreamDefaultController", |
+ "ReadableByteStreamController", |
+ "WritableStreamDefaultWriter", |
+ "WritableStreamDefaultController", |
+ // http://w3c.github.io/IndexedDB/ |
+ "IDBEnvironment", |
+ // https://www.w3.org/TR/2010/NOTE-webdatabase-20101118/ |
+ "Database", |
+ // https://w3c.github.io/uievents/ |
+ "UIEvent", |
+ "FocusEvent", |
+ "MouseEvent", |
+ "WheelEvent", |
+ "InputEvent", |
+ "KeyboardEvent", |
+ "CompositionEvent", |
+ ]; |
+ var result = []; |
+ for (var i = 0; i < unexpected.length; ++i) { |
+ result.push([unexpected[i], unexpected[i] in self]); |
+ } |
+ e.ports[0].postMessage(result); |
+} |
+/* |
+--> |
+<!doctype html> |
+<title>unavailable interface objects in shared worker</title> |
+<script src="/resources/testharness.js"></script> |
+<script src="/resources/testharnessreport.js"></script> |
+<div id=log></div> |
+<script> |
+setup(function() { |
+ window.worker = new SharedWorker('#'); |
+ worker.port.onmessage = function(e) { |
+ var result = e.data; |
+ for (var i = 0; i < result.length; ++i) { |
+ test(function() { |
+ assert_false(result[i][1]); |
+ }, "The " + result[i][0] + " interface object should not be exposed"); |
+ } |
+ done(); |
+ } |
+}, {explicit_done: true}); |
+</script> |
+<!-- |
+*/ |
+//--> |
+ |