diff options
Diffstat (limited to 'testing/web-platform/tests/encoding/idlharness.html')
-rw-r--r-- | testing/web-platform/tests/encoding/idlharness.html | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/testing/web-platform/tests/encoding/idlharness.html b/testing/web-platform/tests/encoding/idlharness.html new file mode 100644 index 000000000..c010df3fa --- /dev/null +++ b/testing/web-platform/tests/encoding/idlharness.html @@ -0,0 +1,66 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>idlharness test: Encoding Living Standard API</title> +<link rel="author" title="Joshua Bell" href="mailto:jsbell@google.com" /> +<link rel="help" href="https://encoding.spec.whatwg.org/#api"/> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/resources/WebIDLParser.js"></script> +<script src="/resources/idlharness.js"></script> + +<h1>idlharness test</h1> +<p>This test validates the WebIDL included in the Encoding Living Standard.</p> + +<script type="text/plain" class="untested-idl"> +interface Window {}; +</script> + +<script type="text/plain" class="idl"> +// 8.1 Interface TextDecoder + +dictionary TextDecoderOptions { + boolean fatal = false; + boolean ignoreBOM = false; +}; + +dictionary TextDecodeOptions { + boolean stream = false; +}; + +[Constructor(optional DOMString label = "utf-8", optional TextDecoderOptions options), + Exposed=Window,Worker] +interface TextDecoder { + readonly attribute DOMString encoding; + readonly attribute boolean fatal; + readonly attribute boolean ignoreBOM; + USVString decode(optional BufferSource input, optional TextDecodeOptions options); +}; + +// 8.2 Interface TextDecoder + +[Constructor, + Exposed=Window,Worker] +interface TextEncoder { + readonly attribute DOMString encoding; + [NewObject] Uint8Array encode(optional USVString input = ""); +}; +</script> + +<script> +function select(selector) { + return [].slice.call(document.querySelectorAll(selector)) + .map(function(e) { return e.textContent; }) + .join('\n\n'); +} + +var idl = select('.idl') +var untested = select('.untested-idl'); +var idl_array = new IdlArray(); +idl_array.add_untested_idls(untested); +idl_array.add_idls(idl); +idl_array.add_objects({ + TextEncoder: ['new TextEncoder()'], + TextDecoder: ['new TextDecoder()'] +}); +idl_array.test(); +</script> |