| <html> |
| <head> |
| <script src="../../../../resources/js-test.js"></script> |
| <script src="resources/location-tests-functions.js"></script> |
| </head> |
| <body> |
| <script> |
| window.location.valueOf = function() { return "haxored"; } |
| |
| var result = normalizeURL(String(window.location)); |
| var correctValue = normalizeURL(document.URL); |
| shouldBe("result", "correctValue"); |
| result = normalizeURL(String(window.location.valueOf())); |
| shouldBe("result", "correctValue"); |
| shouldThrow("(function() { 'use strict'; location.valueOf = 'haxored'; return location.valueOf(); }())"); |
| shouldNotThrow("(function() { location.valueOf = 'haxored'; return location.valueOf(); }())"); |
| shouldThrow("(function() { 'use strict'; delete location.valueOf; }())"); |
| shouldBe("(function() { delete location.valueOf; return !!location.valueOf}())", "true"); |
| </script> |
| </body> |
| </html> |