| <!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(optional DOMString utfLabel = "utf-8"), | |
| 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> |