spec/gnawrnip/screenshot_spec.rb in gnawrnip-0.1.0 vs spec/gnawrnip/screenshot_spec.rb in gnawrnip-0.1.1
- old
+ new
@@ -2,12 +2,48 @@
require 'gnawrnip/screenshot'
module Gnawrnip
describe Screenshot do
describe '.take' do
- subject { Screenshot.take }
+ subject { Screenshot.take.read }
# see GnawrnipTestSession::save_screenshot
- it { should == "c2NyZWVuc2hvdA==" }
+ it { should == "screenshot" }
+
+ context 'not support save_screenshot' do
+ before do
+ GnawrnipTest::Session.any_instance.stub(:save_screenshot) do
+ raise Capybara::NotSupportedByDriverError
+ end
+ end
+
+ subject { lambda { Screenshot.take } }
+ it { should raise_error Capybara::NotSupportedByDriverError }
+ end
+
+ context 'raise unknown error' do
+ before do
+ GnawrnipTest::Session.any_instance.stub(:save_screenshot) do
+ raise Timeout::Error
+ end
+ end
+
+ context 'timeout' do
+ before do
+ now = Time.now
+ Time.stub(:now).and_return(now, now + 3)
+ end
+
+ subject do
+ lambda {
+ Capybara.using_wait_time 2 do
+ Screenshot.take
+ end
+ }
+ end
+
+ it { should raise_error Timeout::Error }
+ end
+ end
end
end
end