test with phantomjs2

This commit is contained in:
Thomas Walpole 2015-09-24 15:17:08 -07:00
parent adef109b8c
commit e67452716c
4 changed files with 26 additions and 12 deletions

View File

@ -1,5 +1,9 @@
script: bundle exec rake
before_script: phantomjs --version
before_install:
- mkdir travis-phantomjs2
- wget https://s3.amazonaws.com/travis-phantomjs/phantomjs-2.0.0-ubuntu-12.04.tar.bz2 -O $PWD/travis-phantomjs2/phantomjs-2.0.0-ubuntu-12.04.tar.bz2
- tar -xvf $PWD/travis-phantomjs2/phantomjs-2.0.0-ubuntu-12.04.tar.bz2 -C $PWD/travis-phantomjs2
rvm:
- 2.2.2
- 2.1.6
@ -10,3 +14,9 @@ rvm:
env:
global:
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true
matrix:
include:
- rvm: 2.2.2
env: USE_PHANTOMJS2=true
allow_failures:
- env: USE_PHANTOMJS2=true

View File

@ -62,12 +62,8 @@ class Poltergeist.Node
x: position.x + x
y: position.y + y
if window.phantom.version.major == 1
final_pos.x -= 5
final_pos.y -= 5
@page.mouseEvent('mousedown', position.x, position.y)
@page.mouseEvent('mouseup', final_pos.x, final_pos.y)
@page.mouseEvent('mousedown', position.x, position.y)
@page.mouseEvent('mouseup', final_pos.x, final_pos.y)
isEqual: (other) ->

View File

@ -5,7 +5,7 @@ skip << :windows if ENV['TRAVIS']
Capybara::SpecHelper.run_specs TestSessions::Poltergeist, 'Poltergeist', capybara_skip: skip
describe Capybara::Session do
context 'with poltergeist driver', focus: true do
context 'with poltergeist driver' do
before do
@session = TestSessions::Poltergeist
end
@ -431,19 +431,19 @@ describe Capybara::Session do
expect( droppable ).to have_content( "Dropped" )
end
it 'supports drag_by on native element', requires: [:js] do
it 'supports drag_by on native element' do
draggable = @session.find(:css, '#drag_by .draggable')
top_before = @session.evaluate_script('$("#drag_by .draggable").position().top')
left_before = @session.evaluate_script('$("#drag_by .draggable").position().left')
draggable.native.drag_by(10, 10)
draggable.native.drag_by(15, 15)
top_after = @session.evaluate_script('$("#drag_by .draggable").position().top')
left_after = @session.evaluate_script('$("#drag_by .draggable").position().left')
expect( top_after ).to eq( top_before + 10 )
expect( left_after ).to eq( left_before + 10 )
expect( top_after ).to eq( top_before + 15 )
expect( left_after ).to eq( left_before + 15 )
end
end

View File

@ -12,8 +12,16 @@ require 'support/spec_logger'
Capybara.register_driver :poltergeist do |app|
debug = !ENV['DEBUG'].nil?
options = {
logger: TestSessions.logger,
inspector: debug,
debug: debug
}
options[:phantomjs] = ENV['TRAVIS_BUILD_DIR'] + '/travis-phantomjs2/phantomjs' if ENV['TRAVIS'] && ENV['USE_PHANTOMJS2']
Capybara::Poltergeist::Driver.new(
app, logger: TestSessions.logger, inspector: debug, debug: debug
app, options
)
end