デフォルトの Rack ドライバーに支えられた Capybara から、Poltergeist に支えられた Capybara に移行しています。
苛立たしい理由から、ページをロードする前にセッション データを操作する必要があります。しかし、Rack ドライバーでセッションを直接操作する方法がわかりませんでした。
Capybara.current_session.driver.submit :post, "/current_search", {:session => :data }
残念ながら、ポルターガイストdriver
オブジェクトにはsubmit
、Rack ドライバーのようなメソッドがありません。
次の 3 つの可能性があります。
- poltergeist/phantomjs で POST リクエストを送信するにはどうすればよいですか? (これを実装するのが最も簡単なようです)
- poltergeist/phantomjs でセッション データを直接操作するにはどうすればよいですか?
- セッション データを直接操作する必要がなくなるように、コードを再構築できます。これには時間がかかり、優先度が低くなります。
PS: Ruby 1.8 を使用しているため、Poltergeist v1.0.2で立ち往生しています。