dom/plugins/test/mochitest/test_pluginstream_src_dynamic.html

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

michael@0 1 <html>
michael@0 2 <head>
michael@0 3 <title>NPAPI src="" NPStream Test</title>
michael@0 4 <script type="text/javascript"
michael@0 5 src="/tests/SimpleTest/SimpleTest.js"></script>
michael@0 6 <script type="text/javascript"
michael@0 7 src="pluginstream.js"></script>
michael@0 8 <script type="text/javascript" src="utils.js"></script>
michael@0 9 <script type="text/javascript">
michael@0 10 setTestPluginEnabledState(SpecialPowers.Ci.nsIPluginTag.STATE_ENABLED);
michael@0 11 </script>
michael@0 12 <link rel="stylesheet" type="text/css"
michael@0 13 href="/tests/SimpleTest/test.css" />
michael@0 14 </head>
michael@0 15 <body>
michael@0 16 <p id="display"></p>
michael@0 17
michael@0 18 <iframe id="testframe" name="testframe" onload="frameLoaded()"></iframe>
michael@0 19
michael@0 20 <!--
michael@0 21 - A stream is sent to the browser via NPP_NewStream, NP_NORMAL.
michael@0 22 - The plugin reports that data can only be sent to it in 100-byte
michael@0 23 - chunks. When NPP_DestroyStream is called, the plugin sends the stream
michael@0 24 - content back to the browser by passing it as a data: url to
michael@0 25 - NPN_GetURL, using a frame, so that the stream content should
michael@0 26 - be displayed in the frame in the browser.
michael@0 27 -
michael@0 28 - We create the object element dynamically, which in some cases has caused us to deliver the data=""
michael@0 29 - stream twice. This verifies that we only deliver the data="" stream once.
michael@0 30 -->
michael@0 31
michael@0 32 <script type="text/javascript">
michael@0 33 var e = document.createElement('object');
michael@0 34 e.setAttribute('data', 'loremipsum.xtest');
michael@0 35 e.setAttribute('type', 'application/x-test');
michael@0 36 e.setAttribute('streammode', 'normal');
michael@0 37 e.setAttribute('streamchunksize', '100');
michael@0 38 e.setAttribute('frame', 'testframe');
michael@0 39 e.setAttribute('style', 'width: 400px; height: 100px;');
michael@0 40 document.body.appendChild(e);
michael@0 41 </script>
michael@0 42 </body>
michael@0 43 </html>

mercurial