content/media/test/test_closing_connections.html
author Carsten "Tomcat" Book <cbook@mozilla.com>
Thu, 17 Jul 2014 16:26:05 +0200
changeset 216649 b0cc3073ef81579b8e9f36be0d82d9ca96fdae0b
parent 216643 2ccde1bdcb7f9ddd757604fc65766184d9806bbe
child 231939 63cbbdbc8e768b66e0ad89271cdbe41c9f057c44
permissions -rw-r--r--
Backed out changeset 2ccde1bdcb7f (bug 902686) for android m3 test failures

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();
SpecialPowers.pushPrefEnv({"set": [["media.cache_size", 40000]]}, beginTest);
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>