From ef7a5f8d6ecd861bac4f58fee9e00edb6c903541 Mon Sep 17 00:00:00 2001 From: Sage Ross Date: Thu, 30 Dec 2021 13:50:06 -0800 Subject: [PATCH] Replace "execute_script" for triggering hovercards In addition to getting rid of an "execute_script" instance, this approach is slightly higher fidelity, as it renders the hovercard at the correct place on the page and doesn't reach into jQuery to trigger the hovercard. --- features/step_definitions/hovercard_steps.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/features/step_definitions/hovercard_steps.rb b/features/step_definitions/hovercard_steps.rb index 832dcc307..3235d43e8 100644 --- a/features/step_definitions/hovercard_steps.rb +++ b/features/step_definitions/hovercard_steps.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true When(/^I activate the first hovercard$/) do - page.execute_script("$('.hovercardable').first().trigger('mouseenter');") + first(".hovercardable").hover end Then(/^I should see a hovercard$/) do @@ -14,7 +14,7 @@ Then(/^I should see "([^"]*)" hashtag in the hovercard$/) do |tag| end When(/^I deactivate the first hovercard$/) do - page.execute_script("$('.hovercardable').first().trigger('mouseleave');") + find("input#q").click # Click something else instead — e.g., search — to deactive it end Then(/^I should not see a hovercard$/) do