Module: PludoniRspec::SystemTestChromeHelper

Defined in:
lib/pludoni_rspec/system_test_chrome_helper.rb

Instance Method Summary collapse

Instance Method Details

#console_logsObject



2
3
4
# File 'lib/pludoni_rspec/system_test_chrome_helper.rb', line 2

def console_logs
  page.driver.browser.manage.logs.get(:browser)
end

#drop_in_dropzone(file_path) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/pludoni_rspec/system_test_chrome_helper.rb', line 6

def drop_in_dropzone(file_path)
  # Generate a fake input selector
  page.execute_script <<-JS
  fakeFileInput = window.$('<input/>').attr(
    {id: 'fakeFileInput', type:'file'}
  ).appendTo('body');
  JS
  # Attach the file to the fake input selector
  attach_file("fakeFileInput", file_path)
  # Add the file to a fileList array
  page.execute_script("var fileList = [fakeFileInput.get(0).files[0]]")
  # Trigger the fake drop event
  page.execute_script <<-JS
  var e = jQuery.Event('drop', { dataTransfer : { files : [fakeFileInput.get(0).files[0]] } });
  $('.uploader-action')[0].dropzone.listeners[0].events.drop(e);
  JS
end

#in_browser(name) ⇒ Object



33
34
35
36
37
38
# File 'lib/pludoni_rspec/system_test_chrome_helper.rb', line 33

def in_browser(name)
  old_session = Capybara.session_name
  Capybara.session_name = name
  yield
  Capybara.session_name = old_session
end

#screenshot(path = '1') ⇒ Object



24
25
26
# File 'lib/pludoni_rspec/system_test_chrome_helper.rb', line 24

def screenshot(path = '1')
  page.save_screenshot(Rails.root.join("public/screenshots/#{path}.png"))
end

#skip_confirm(page) ⇒ Object

skip any confirm: “Really delete?”



29
30
31
# File 'lib/pludoni_rspec/system_test_chrome_helper.rb', line 29

def skip_confirm(page)
  page.evaluate_script('window.confirm = function() { return true; }')
end