frameReplace.html (1569B)
1 <html xmlns="http://www.w3.org/1999/xhtml"> 2 <head> 3 <title>localStorage replace frame</title> 4 5 <script type="text/javascript"> 6 7 var shell; 8 9 function ok(a, message) 10 { 11 if (!a) 12 shell.postMessage("FAILURE: " + message, "http://mochi.test:8888"); 13 else 14 shell.postMessage(message, "http://mochi.test:8888"); 15 } 16 17 function is(a, b, message) 18 { 19 if (a != b) 20 shell.postMessage("FAILURE: " + message + ", expected "+b+" got "+a, "http://mochi.test:8888"); 21 else 22 shell.postMessage(message + ", expected "+b+" got "+a, "http://mochi.test:8888"); 23 } 24 25 function doTest() 26 { 27 var query = location.search.substring(1); 28 var queries = query.split("&"); 29 30 var action = queries[0]; 31 shell = queries[1]; 32 switch (shell) 33 { 34 case "frame": 35 shell = parent; 36 break; 37 case "window": 38 shell = opener; 39 break; 40 } 41 42 switch (action) 43 { 44 case "init": 45 localStorage.setItem("A", "1"); 46 localStorage.setItem("B", "2"); 47 localStorage.setItem("C", "3"); 48 is(localStorage.getItem("A"), "1", "'A' is '1'"); 49 is(localStorage.getItem("B"), "2", "'A' is '2'"); 50 is(localStorage.getItem("C"), "3", "'A' is '3'"); 51 break; 52 53 case "check": 54 is(localStorage.getItem("A"), null, "'A' is null"); 55 is(localStorage.getItem("B"), null, "'A' is null"); 56 is(localStorage.getItem("C"), null, "'A' is null"); 57 break; 58 59 case "clean": 60 localStorage.clear(); 61 break; 62 } 63 64 shell.postMessage(action + "_done", "http://mochi.test:8888"); 65 } 66 67 </script> 68 69 </head> 70 <body onload="doTest();"> 71 </body> 72 </html>