chromium/third_party/blink/web_tests/fast/frames/resources/frame-set-location-badstring.html

<script src="../../../resources/js-test.js"></script>
<script>
description("Tests that assigning a bad string to HTMLFrameElement.location throws and aborts properly.");

var frameLocation = parent.frames[1].location;
shouldNotBe("frameLocation", "null");
shouldNotBe("frameLocation", "undefined");
var badString = { toString: function() { throw "Exception in toString()"; } };
shouldThrow("parent.frames[1].location = badString;", "'Exception in toString()'");
shouldBe("parent.frames[1].location", "frameLocation");
</script>