| <!DOCTYPE HTML> |
| <html> |
| <head> |
| <script src="/js-test-resources/js-test.js"></script> |
| <script> |
| description("Checking transmission of Beacons involving cookies."); |
| |
| window.jsTestIsAsync = true; |
| |
| function test() { |
| if (window.testRunner) { |
| testRunner.dumpAsText(); |
| testRunner.waitUntilDone(); |
| //testRunner.dumpPingLoaderCallbacks(); |
| } |
| try { |
| var xhr = new XMLHttpRequest(); |
| xhr.open("GET", "../../cookies/resources/setCookies.cgi", false); |
| xhr.setRequestHeader("SET-COOKIE", "hello=world;path=/"); |
| xhr.send(null); |
| if (xhr.status != 200) { |
| testFailed("cookie not set"); |
| finishJSTest(); |
| } |
| } catch (e) { |
| testFailed("cookie not set"); |
| finishJSTest(); |
| } |
| |
| shouldBeTrue('navigator.sendBeacon("resources/save-beacon.php?name=cookie", "Blip");'); |
| var xhr = new XMLHttpRequest(); |
| xhr.open("GET", "resources/check-beacon.php?name=cookie"); |
| xhr.onload = function () { |
| var lines = xhr.responseText.split("\n"); |
| for (var i in lines) |
| testPassed(lines[i]); |
| finishJSTest(); |
| }; |
| xhr.onerror = function () { |
| testFailed("Unable to fetch beacon status"); |
| finishJSTest(); |
| }; |
| |
| xhr.send(); |
| } |
| </script> |
| </head> |
| <body onload="test();"> |
| </body> |
| </html> |