Ich versuche, eine Dropzone Capybara Test mehrere Male aufrufen. Wenn ich es jedoch ein zweites Mal anrufe, wurde die ID bereits verwendet. Ich versuche, die ID zu randomisieren, damit sie mehrfach ausgeführt werden kann.Refactor Capybara Javascript DropZone Test
def drop_in_dropzone(file_path)
page.execute_script <<-JS
fakeFileInput = window.$('<input/>').attr(
{id: 'fakeFileInput', type:'file'}
).appendTo('body');
JS
attach_file("fakeFileInput", file_path)
page.execute_script("var fileList = [fakeFileInput.get(0).files[0]]")
page.execute_script <<-JS
var e = jQuery.Event('drop', { dataTransfer : { files : [fakeFileInput.get(0).files[0]] } });
$('.dropzone')[0].dropzone.listeners[0].events.drop(e);
JS
end
Fehler beim zweiten Aufruf.
Failure/Error: attach_file("fakeFileInput", file_path)
Capybara::Ambiguous:
Ambiguous match, found 2 elements matching file field "fakeFileInput"