summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/web-share/canShare-files.https.html
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--testing/web-platform/tests/web-share/canShare-files.https.html40
1 files changed, 40 insertions, 0 deletions
diff --git a/testing/web-platform/tests/web-share/canShare-files.https.html b/testing/web-platform/tests/web-share/canShare-files.https.html
new file mode 100644
index 0000000000..2c2f2ff969
--- /dev/null
+++ b/testing/web-platform/tests/web-share/canShare-files.https.html
@@ -0,0 +1,40 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>WebShare Test: canShare with files</title>
+ <script src="/resources/testharness.js"></script>
+ <script src="/resources/testharnessreport.js"></script>
+ </head>
+ <body>
+ <script>
+ 'use strict';
+ const textFile = new File(['hello'], 'hello.txt', {type:'text/plain'});
+ const emptyFile = new File([''], 'empty');
+
+ test(() => {
+ assert_throws_js(TypeError, () => { navigator.canShare({files: textFile}) });
+ }, 'canShare with single file');
+
+ test(() => {
+ assert_equals(navigator.canShare({files: []}), false);
+ }, 'canShare with empty file list');
+
+ test(() => {
+ assert_equals(navigator.canShare({files: [emptyFile]}), true);
+ }, 'canShare with single file list');
+
+ test(() => {
+ assert_equals(navigator.canShare({files: [textFile, emptyFile]}), true);
+ }, 'canShare with file list');
+
+ test(() => {
+ assert_equals(navigator.canShare({files: [textFile, emptyFile, textFile]}), true);
+ }, 'canShare with repeated file');
+
+ test(() => {
+ assert_equals(navigator.canShare({url: 'https://example.com/', files: [textFile, emptyFile]}), true);
+ }, 'canShare with file list and url');
+ </script>
+ </body>
+</html>