|  | <!DOCTYPE html> | 
|  | <html> | 
|  |  | 
|  | <head> | 
|  | <!-- Programmatically converted from a WebKit Reftest, please forgive resulting idiosyncracies.--> | 
|  | <title>filesystem-urls-match-filesystem</title> | 
|  | <script src="/resources/testharness.js"></script> | 
|  | <script src="/resources/testharnessreport.js"></script> | 
|  | <script src='../support/logTest.sub.js?logs=["PASS (1/1)"]'></script> | 
|  | <script src="../support/alertAssert.sub.js?alerts=[]"></script> | 
|  | <!-- enforcing policy: | 
|  | script-src 'self' 'unsafe-inline' 'unsafe-inline' 'self'; connect-src 'self'; | 
|  | --> | 
|  | </head> | 
|  |  | 
|  | <body> | 
|  | <p> | 
|  | filesystem: URLs are same-origin with the page in which they were created, but explicitly do not match the 'self' or '*' source in CSP directives because they are more akin to 'unsafe-inline' content, but should match filesystem: source. | 
|  | </p> | 
|  | <script> | 
|  | if(!window.webkitRequestFileSystem) { | 
|  | t_log.set_status(t_log.NOTRUN, "No filesystem:// support, cannot run test."); | 
|  | t_log.phase = t_log.phases.HAS_RESULT; | 
|  | t_log.done(); | 
|  | } else { | 
|  | function pass() { | 
|  | log("PASS (1/1)"); | 
|  | } | 
|  | window.webkitRequestFileSystem( | 
|  | TEMPORARY, 1024 * 1024 /*1MB*/ , function(fs) { | 
|  | fs.root.getFile('pass.js', { | 
|  | create: true | 
|  | }, function(fileEntry) { | 
|  | fileEntry.createWriter(function(fileWriter) { | 
|  | fileWriter.onwriteend = function(e) { | 
|  | var script = document.createElement('script'); | 
|  | script.src = fileEntry.toURL('application/javascript'); | 
|  | document.body.appendChild(script); | 
|  | }; | 
|  | // Create a new Blob and write it to pass.js. | 
|  | var b = new Blob(['pass();'], { | 
|  | type: 'application/javascript' | 
|  | }); | 
|  | fileWriter.write(b); | 
|  | }); | 
|  | }); | 
|  | }); | 
|  | var s = document.createElement('script'); | 
|  | s.async = true; | 
|  | s.defer = true; | 
|  | s.src = "../support/checkReport.sub.js?reportExists=false" | 
|  | document.lastChild.appendChild(s); | 
|  | } | 
|  |  | 
|  | </script> | 
|  | <div id="log"></div> | 
|  | </body> | 
|  |  | 
|  | </html> |