chromium/third_party/blink/web_tests/http/tests/dom/location-stringify.html

<html>
<head>
<script>
function log(str)
{
  var li = document.createElement("li");
  li.appendChild(document.createTextNode(str));
  var console = document.getElementById("console");
  console.appendChild(li);
}

function assertEqual(message, actual, expected)
{
  if (actual != expected)
    log("\n" + message + ": Failure, actual: " + actual + "; expected: " + expected);
  else
    log("\n" + message + ": Success");
}

function runTests() {
  if (window.testRunner) {
    testRunner.dumpAsText();
  }
  assertEqual(
      "stringify",
      JSON.stringify(window.location),
      '{"ancestorOrigins":{},"href":"http://127.0.0.1:8000/dom/location-stringify.html","origin":"http://127.0.0.1:8000","protocol":"http:","host":"127.0.0.1:8000","hostname":"127.0.0.1","port":"8000","pathname":"/dom/location-stringify.html","search":"","hash":""}');
}
</script>
</head>
<body onload="runTests();">
<p>
Tests that Location interface is [LegacyUnforgeable], thus JSON.stringify() works well for Location objects.
</p>
<ul id="console" dir=ltr></ul>
</body>
</html>