Wednesday, November 26, 2014

Getting PhantomJS to work with Stripe following the POODLE issue

Recently with the POODLE issue we ran into a case where our PhantomJS tests would not run on Codeship. After some swearing and digging we found that PhantomJS defaulted to using 'SSLv3' and Stripe no longer supported that. Therefore when our feature tests went to access Stripe they failed. To get around this we had to change the default for PhantomJS in our spec_helper.rb file. This is done by the phantom_options array in the options hash:
   Capybara.register_driver :poltergeist do |app|  
    options = {  
     phantomjs_logger: WarningSuppressor.new,  
     phantomjs_options: ['--ssl-protocol=tlsv1']  
    }  
    Capybara::Poltergeist::Driver.new(app, options)  
   end  
So if you need to use that, or any of the other PhantomJS command line options listed here, you can do that in the phantomjs_options array.

No comments:

Post a Comment