| <!DOCTYPE html> |
| <title>document.contentType</title> |
| <link rel="help" href="http://dom.spec.whatwg.org/#dom-document-contenttype"> |
| <script src="../../resources/js-test.js"></script> |
| <body> |
| <p> |
| <iframe data-mimetype="text/html"></iframe> |
| <iframe data-mimetype="text/xml"></iframe> |
| <iframe data-mimetype="application/xml"></iframe> |
| <iframe data-mimetype="image/svg+xml"></iframe> |
| </p> |
| <script> |
| window.jsTestIsAsync = true; |
| var tests = new Array(); |
| |
| window.onmessage = function(e) { |
| if (e.data) |
| tests[--expectedMessagesCount]=e.data; |
| else |
| testFailed("Null message payload"); |
| |
| if (expectedMessagesCount == 0) { |
| runTests(); |
| finishJSTest(); |
| } |
| }; |
| |
| function runTests(){ |
| tests.sort(function(a,b){ |
| if (a.obtained > b.obtained) |
| return -1; |
| if (a.obtained < b.obtained) |
| return 1; |
| return 0; |
| }); |
| |
| for (var i = tests.length - 1; i >= 0; i--) { |
| shouldBe('"' + tests[i].obtained + '"', '"' + tests[i].expected + '"'); |
| }; |
| } |
| |
| var documentContents = '<script xmlns="http://www.w3.org/1999/xhtml">' + |
| 'parent.postMessage(' + |
| '{obtained: document.contentType, expected: "{0}"}, "*");' + |
| '<' + '/script>'; |
| |
| var iframes = document.getElementsByTagName('iframe'); |
| for (var k = 0, f; f = iframes[k]; k++) { |
| f.src = 'data:' + f.dataset.mimetype + ',' + encodeURIComponent(documentContents.replace('{0}', f.dataset.mimetype)); |
| } |
| |
| var expectedMessagesCount = iframes.length; |
| |
| </script> |
| </body> |