summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/presentation-api/receiving-ua/idlharness.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/presentation-api/receiving-ua/idlharness.html')
-rw-r--r--testing/web-platform/tests/presentation-api/receiving-ua/idlharness.html120
1 files changed, 120 insertions, 0 deletions
diff --git a/testing/web-platform/tests/presentation-api/receiving-ua/idlharness.html b/testing/web-platform/tests/presentation-api/receiving-ua/idlharness.html
new file mode 100644
index 000000000..24b0859a6
--- /dev/null
+++ b/testing/web-platform/tests/presentation-api/receiving-ua/idlharness.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>Presentation API IDL tests for Receiving User Agent</title>
+<link rel="author" title="Louay Bassbouss" href="http://www.fokus.fraunhofer.de">
+<link rel="help" href="http://w3c.github.io/presentation-api/#dfn-receiving-user-agent">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/WebIDLParser.js"></script>
+<script src="/resources/idlharness.js"></script>
+
+<script id="untested_idl" type="text/plain">
+interface Navigator {
+};
+interface EventTarget {
+};
+interface EventHandler {
+};
+interface Event {
+};
+dictionary EventInit {
+};
+</script>
+
+<script id='idl' type="text/plain">
+partial interface Navigator {
+ [SameObject]
+ readonly attribute Presentation? presentation;
+};
+
+interface Presentation {
+};
+
+partial interface Presentation {
+ [SameObject]
+ readonly attribute PresentationReceiver? receiver;
+};
+
+[Constructor(DOMString type, PresentationConnectionAvailableEventInit eventInitDict)]
+interface PresentationConnectionAvailableEvent : Event {
+ [SameObject]
+ readonly attribute PresentationConnection connection;
+};
+
+dictionary PresentationConnectionAvailableEventInit : EventInit {
+ required PresentationConnection connection;
+};
+
+enum PresentationConnectionState {
+ "connecting",
+ "connected",
+ "closed",
+ "terminated"
+};
+
+enum BinaryType {
+ "blob",
+ "arraybuffer"
+};
+
+interface PresentationConnection : EventTarget {
+ readonly attribute DOMString? id;
+ readonly attribute PresentationConnectionState state;
+ void close();
+ void terminate();
+ attribute EventHandler onconnect;
+ attribute EventHandler onclose;
+ attribute EventHandler onterminate;
+
+ // Communication
+ attribute BinaryType binaryType;
+ attribute EventHandler onmessage;
+ void send(DOMString message);
+ void send(Blob data);
+ void send(ArrayBuffer data);
+ void send(ArrayBufferView data);
+};
+
+enum PresentationConnectionClosedReason {
+ "error",
+ "closed",
+ "wentaway"
+};
+
+[Constructor(DOMString type, PresentationConnectionCloseEventInit eventInitDict)]
+interface PresentationConnectionCloseEvent : Event {
+ readonly attribute PresentationConnectionClosedReason reason;
+ readonly attribute DOMString message;
+};
+
+dictionary PresentationConnectionCloseEventInit : EventInit {
+ required PresentationConnectionClosedReason reason;
+ DOMString message = "";
+};
+
+interface PresentationReceiver {
+ [SameObject]
+ readonly attribute Promise<PresentationConnectionList> connectionList;
+};
+
+interface PresentationConnectionList : EventTarget {
+ readonly attribute FrozenArray<PresentationConnection> connections;
+ attribute EventHandler onconnectionavailable;
+};
+</script>
+
+<script>
+ (function() {
+ "use strict";
+ var idl_array = new IdlArray();
+ var idls = document.getElementById('idl').textContent;
+ idl_array.add_untested_idls(document.getElementById('untested_idl').textContent);
+ idl_array.add_idls(idls);
+ idl_array.add_objects({
+ Presentation: ['navigator.presentation'],
+ PresentationReceiver: ['navigator.presentation.receiver']
+ });
+ idl_array.test();
+ })();
+</script>
+