1<!DOCTYPE html> 2<meta charset="utf-8"> 3<title>FileReader SecurityError Test</title> 4<link rel="author" title="Intel" href="http://www.intel.com"> 5<link rel="help" href="https://w3c.github.io/FileAPI/#dfn-error-codes"> 6<script src="/resources/testharness.js"></script> 7<script src="/resources/testharnessreport.js"></script> 8<form name="upload"> 9 <input type="file" id="fileChooser"><br><input type="button" id="start" value="start"> 10</form> 11 12<div> 13 <p>Test steps:</p> 14 <ol> 15 <li>Select a system sensitive file (e.g. files in /usr/bin, password files, 16 and other native operating system executables) in the file inputbox.</li> 17 <li>Click the 'start' button.</li> 18 </ol> 19</div> 20 21<script> 22 23 const fileChooser = document.querySelector('#fileChooser'); 24 25 setup({explicit_done: true}); 26 setup({explicit_timeout: true}); 27 28 on_event(document.querySelector('#start'), 'click', () => { 29 async_test(t => { 30 const reader = new FileReader(); 31 reader.readAsArrayBuffer(fileChooser.files[0]); 32 reader.onloadend = t.step_func_done(event => { 33 assert_equals(event.target.readyState, FileReader.DONE); 34 assert_equals(reader.error.name, "SecurityError"); 35 }); 36 }, 'FileReader.error should be SECURITY_ERROR if the file is a system sensitive file'); 37 done(); 38 }); 39 40</script> 41