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