Skip to content

Instantly share code, notes, and snippets.

@twalpole
Created July 8, 2017 16:16
Show Gist options
  • Save twalpole/ac5c893a6f1f27ba3005908421d3e45d to your computer and use it in GitHub Desktop.
Save twalpole/ac5c893a6f1f27ba3005908421d3e45d to your computer and use it in GitHub Desktop.
require 'capybara/dsl'
require 'selenium-webdriver'
html = DATA.read
app = proc { |env| [200, { "Content-Type" => "text/html" }, [html] ] }
sess = Capybara::Session.new(:selenium, app)
sess.visit('/')
wrapper = sess.find('.wrapper:first-child')
card = wrapper.find('.card:first-child')
puts card.text
sess.execute_script("arguments[0].parentNode.removeChild(arguments[0])", card)
puts card.text
sess.execute_script("arguments[0].parentNode.removeChild(arguments[0])", wrapper)
puts card.text
__END__
<!doctype html>
<html>
<body>
<div class="wrapper">
<div class="card">First card</div>
<div class="card">Second card</div>
</div>
<div class="wrapper">
<div class="card">Third card</div>
</div>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment