chromium/third_party/google-closure-library/closure/goog/string/string_benchmark.html

<!DOCTYPE html>
<html>
<!--
Copyright The Closure Library Authors. All Rights Reserved.

Use of this source code is governed by the Apache License, Version 2.0.
See the COPYING file for details.
-->
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Closure Benchmarks - goog.dom</title>
<script src="../base.js"></script>
<script>
  goog.require('goog.string');
  goog.require('goog.testing.benchmark');
</script>
<link rel="stylesheet" href="../testing/performancetable.css"/>
</head>
<body>
<script>

  var junkstring1 = 'try{goog$module$ModuleManager.getInstance().beforeLoadMo' +
                    'duleCode("sy177");var pi... (length: 212208)\n';
  var junkstring2 = 'try{goog$module$ModuleManager.getInstance().beforeLoadMo' +
                    'duleCode("sy48");var ppl... (length: 538942)\n';

  // Make the length of the strings about 200k characters.
  junkstring1 = goog.string.repeat(junkstring1, 2048);
  junkstring2 = goog.string.repeat(junkstring2, 2048);

  junkstring1 = 'pattern\n' + junkstring1 + 'pattern\n';

  function benchmarkEndsWith() {
    for (var i = 0; i < 100; i++) {
      goog.string.endsWith(junkstring1, 'pattern\n');
      goog.string.endsWith(junkstring2, 'pattern\n');
    }
  }

  function benchmarkStartsWith() {
    for (var i = 0; i < 100; i++) {
      goog.string.startsWith(junkstring1, 'pattern\n');
      goog.string.startsWith(junkstring2, 'pattern\n');
    }
  }
</script>
</body>
</html>