| <!DOCTYPE html> |
| <html> |
| <head> |
| <script src="../../../resources/js-test.js"></script> |
| </head> |
| <body> |
| <input id="single_file" name="upfile" type="file" /> |
| <input id="multiple_files" name="upfile[]" multiple="multiple" type="file" /> |
| <input id="single_or_multiple_file" name="upfile[]" type="file" /> |
| <p>This tests the label of a file chooser button.</p> |
| <div id="console"></div> |
| <script> |
| function uploadButton(input) { |
| return internals.shadowRoot(input).getElementById('file-upload-button'); |
| } |
| |
| if (window.testRunner) { |
| var file = document.getElementById('single_file'); |
| var button = uploadButton(file); |
| var label = button.getAttribute('value'); |
| var result = 'The label of a single file chooser button is "' + label + '".'; |
| label == 'Choose File' ? testPassed(result) : testFailed(result); |
| |
| file = document.getElementById('multiple_files'); |
| button = uploadButton(file); |
| label = button.getAttribute('value'); |
| result = 'The label of a multiple file chooser button is "' + label + '".'; |
| label == 'Choose Files' ? testPassed(result) : testFailed(result); |
| |
| file = document.getElementById('single_or_multiple_file'); |
| button = uploadButton(file); |
| label = button.getAttribute('value'); |
| result = 'Initially, the label of a file chooser button is "' + label + '".'; |
| label == 'Choose File' ? testPassed(result) : testFailed(result); |
| |
| file.setAttribute("multiple", "multiple"); |
| button = uploadButton(file); |
| label = button.getAttribute('value'); |
| result = 'Set "multiple" attribute, then the label of the file chooser button becomes "' + label + '".'; |
| label == 'Choose Files' ? testPassed(result) : testFailed(result); |
| |
| file.removeAttribute("multiple"); |
| button = uploadButton(file); |
| label = button.getAttribute('value'); |
| result = 'Unset "multiple" attribute, then the label of the file chooser button becomes "' + label + '".'; |
| label == 'Choose File' ? testPassed(result) : testFailed(result); |
| } |
| </script> |
| </body> |
| </html> |