| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset='utf-8'> |
| <title>FileAPI Test: filelist_multiple_selected_files</title> |
| <link rel='author' title='Intel' href='http://www.intel.com'> |
| <link rel='help' href='http://dev.w3.org/2006/webapi/FileAPI/#filelist-section'> |
| <link rel="help" href="http://dev.w3.org/2006/webapi/FileAPI/#dfn-length"> |
| <link rel="help" href="http://dev.w3.org/2006/webapi/FileAPI/#dfn-item"> |
| <script src='/resources/testharness.js'></script> |
| <script src='/resources/testharnessreport.js'></script> |
| </head> |
| |
| <body> |
| <form name='uploadData'> |
| <input type='file' id='fileChooser' multiple> |
| </form> |
| <div> |
| <p>Test steps:</p> |
| <ol> |
| <li>Download <a href='support/upload.txt'>upload.txt</a>, <a href="support/upload.zip">upload.zip</a> to local.</li> |
| <li>Select the local two files (upload.txt, upload.zip) to run the test.</li> |
| </ol> |
| </div> |
| |
| <div id='log'></div> |
| |
| <script> |
| var fileInput = document.querySelector('#fileChooser'); |
| var fileList; |
| |
| setup({explicit_done: true, explicit_timeout: true}); |
| |
| on_event(fileInput, 'change', function(evt) { |
| test(function() { |
| fileList = document.querySelector('#fileChooser').files; |
| assert_equals(fileList.length, 2, 'fileList length is 2'); |
| }, 'Check if the fileList length is 2 when selected two files'); |
| |
| test(function() { |
| fileList = document.querySelector('#fileChooser').files; |
| assert_true(fileList.item(0) instanceof File, 'item method is instanceof File'); |
| }, 'Check if the item method returns the File interface when selected two files'); |
| |
| test(function() { |
| fileList = document.querySelector('#fileChooser').files; |
| assert_not_equals(fileList.item(1), null, 'item(1) is not null'); |
| }, 'Check if item(1) is not null when selected two files. Index must be treated by user agents as value for the position of a File object in the FileList, with 0 representing the first file.'); |
| |
| test(function() { |
| fileList = document.querySelector('#fileChooser').files; |
| assert_equals(fileList.item(2), null, 'item(2) is null'); |
| }, 'Check if item(2) is null when selected two files'); |
| |
| test(function() { |
| fileList = document.querySelector('#fileChooser').files; |
| assert_array_equals([fileList.item(0).name, fileList.item(1).name], ['upload.txt', 'upload.zip'], 'file name string is the name of selected files "upload.txt", "upload.zip"'); |
| }, 'Check if the file name string is the name of selected files'); |
| |
| done(); |
| }); |
| </script> |
| </body> |
| </html> |