blob: 417ea2f5dcc5ac5c1a16ca338f64f9643e9cb8e5 [file] [log] [blame]
Tests access to event.dataTransfer.files and .types
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
Dragging no files should return an empty file list (arbitrary implementation detail):
On dragenter:
PASS event.dataTransfer.types does not contain Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types does not contain Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types does not contain Files.
PASS event.dataTransfer.files.length is 0
Drag drop a single (non-existant) file onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 1
PASS event.dataTransfer.files[0].name is "DRTFakeFile"
PASS event.dataTransfer.files[0].size is 0
FIXME: File.size always returns 0 for files dropped by eventSender.beginDragWithFiles from http tests: https://bugs.webkit.org/show_bug.cgi?id=25909
Drag files over an element, leave that element and release the mouse:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragleave:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
Drag drop a real file onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 1
PASS event.dataTransfer.files[0].name is "apple.gif"
FAIL event.dataTransfer.files[0].size should be 1476. Was 0.
Drag drop two files onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 2
PASS event.dataTransfer.files[0].name is "apple.gif"
FAIL event.dataTransfer.files[0].size should be 1476. Was 0.
PASS event.dataTransfer.files[1].name is "mozilla.gif"
FAIL event.dataTransfer.files[1].size should be 2593. Was 0.
Drag drop two files in reverse alphabetical order onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 2
PASS event.dataTransfer.files[0].name is "mozilla.gif"
FAIL event.dataTransfer.files[0].size should be 2593. Was 0.
PASS event.dataTransfer.files[1].name is "apple.gif"
FAIL event.dataTransfer.files[1].size should be 1476. Was 0.
FIXME: We should not allow element to accept drops including directories unless https://bugs.webkit.org/show_bug.cgi?id=25879 is fixed to make directory File objects useful from JavaScript. The page is given File objects corresponding to directories, but form submission and xhr.send() will fail.
Drag drop a directory onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
FAIL event.dataTransfer.files.length should be 0. Was 1.
Drag drop a file and a directory onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
FAIL event.dataTransfer.files.length should be 0. Was 2.
Drag drop a directory and a file onto an element:
On dragenter:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On dragover:
PASS event.dataTransfer.types contains Files.
PASS event.dataTransfer.files.length is 0
On drop:
PASS event.dataTransfer.types contains Files.
FAIL event.dataTransfer.files.length should be 0. Was 2.
PASS successfullyParsed is true
TEST COMPLETE