canShare-files.https.html (1309B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>WebShare Test: canShare with files</title> 6 <script src="/resources/testharness.js"></script> 7 <script src="/resources/testharnessreport.js"></script> 8 </head> 9 <body> 10 <script> 11 'use strict'; 12 const textFile = new File(['hello'], 'hello.txt', {type:'text/plain'}); 13 const emptyFile = new File([''], 'empty'); 14 15 test(() => { 16 assert_throws_js(TypeError, () => { navigator.canShare({files: textFile}) }); 17 }, 'canShare with single file'); 18 19 test(() => { 20 assert_equals(navigator.canShare({files: []}), false); 21 }, 'canShare with empty file list'); 22 23 test(() => { 24 assert_equals(navigator.canShare({files: [emptyFile]}), true); 25 }, 'canShare with single file list'); 26 27 test(() => { 28 assert_equals(navigator.canShare({files: [textFile, emptyFile]}), true); 29 }, 'canShare with file list'); 30 31 test(() => { 32 assert_equals(navigator.canShare({files: [textFile, emptyFile, textFile]}), true); 33 }, 'canShare with repeated file'); 34 35 test(() => { 36 assert_equals(navigator.canShare({url: 'https://example.com/', files: [textFile, emptyFile]}), true); 37 }, 'canShare with file list and url'); 38 </script> 39 </body> 40 </html>