que tiene un simple link_to_function
en mi plantilla de vistaenfoque de pruebas con Carpincho
<%= link_to_function "add new category", "$('#category_name').focus()" %>
y quiero probar esto con capibara Uso de solicitudes especificaciones. Básicamente la especificación debería ser algo como esto
it "focuses category form when I click 'add new category'" do
visit new_article_path
click_link "add new category"
# unfortunately there's nothing like 'has_focus?'
find_field("category_name").should have_focus
end
el problema es, yo no era capaz de encontrar nada, que compruebe si el elemento tiene el foco. Lo único que hice fue encontrar este
page.evaluate_script('document.focus')[:id]
que sin embargo no es compatible con el controlador capybara-wekbit
, que estoy usando el navegador para evitar la apertura de cada serie de análisis.
muy útil; ciertamente mereces una insignia. Gracias. –
Si el 'activeElement' real se inserta realmente en el dom de forma asincrónica, este método no funcionará, ya que no necesariamente está en dom (por lo tanto, se puede enfocar). Entonces, se debe agregar otra verificación si el elemento está en dom. – ohcibi