content/media/test/test_closing_connections.html
author Martijn Wargers <mwargers@mozilla.com>
Mon, 14 Jul 2014 12:18:16 +0200
changeset 216643 2ccde1bdcb7f9ddd757604fc65766184d9806bbe
parent 147535 09fcb384c6a0f61db6fc6484bad1806832676edd
child 216649 b0cc3073ef81579b8e9f36be0d82d9ca96fdae0b
permissions -rw-r--r--
Bug 902686 - Change manifest.js to use SpecialPowers.pushPrefEnv. r=jwwang

hg diff<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=479863
-->
<head>
  <title>Test for Bug 479863 --- loading many connections</title>
  <script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
  <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
  <script type="application/javascript" src="use_large_cache.js"></script>
  <script type="text/javascript" src="manifest.js"></script>
</head>
<body>
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=479863">Mozilla Bug 479863</a>
<p id="display"></p>
<div id="content" style="display: none">
  
</div>

<script type="application/javascript">
window.onload = function() {
  ok(true, "loaded metadata for all videos");
  mediaTestCleanup();
  SimpleTest.finish();
}

/*   With normal per-domain connection limits and a naive implementation, we
     won't ever be able to load all these videos because the first 15 (or whatever)
     will each take up one HTTP connection (which will be suspended) and then
     the others will be blocked by the per-domain HTTP connection limit. We
     pass this test by closing the connection for non-buffered videos after
     we've got the first frame.
*/

var resource = getPlayableVideo(gSeekTests);

SimpleTest.waitForExplicitFinish();

setMediaTestsPrefs(beginTest, [["media.cache_size", 40000]]);

function beginTest() {
  if (resource != null) {
    for (var i=0; i<20; ++i) {
      var v = document.createElement("video");
      v.src = resource.name;
      document.body.appendChild(v);
    }
  } else {
    todo(false, "No types supported");
  }
}
</script>

<pre id="test">
<script type="application/javascript">
</script>
</pre>
</body>
</html>