Module: Closer::Helpers::Capture
- Defined in:
- lib/closer/helpers/capture.rb
Constant Summary collapse
- IMAGE_DIR =
File.join(feature_dir, 'reports', 'images')
- @@_screen_count =
0
- @@_images =
[]
Instance Method Summary collapse
Instance Method Details
#capture(options = {}) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/closer/helpers/capture.rb', line 17 def capture( = {}) ||= {} = {:title => } if .is_a?(String) return if ENV['FORMAT'] == 'junit' url = Rack::Utils.unescape(current_url) @@_screen_count += 1 image = File.join(IMAGE_DIR, "#{@@_screen_count}.png") page.driver.save_screenshot(image, :full => true) attrs = { :class => 'screenshot', :src => "#{File.basename(IMAGE_DIR)}/#{File.basename(image)}", :title => [:title], :alt => url } image_tag = "<img #{attrs.map{|k, v| "#{k}=\"#{v}\"" }.join(' ')} />" if [:flash] puts image_tag else @@_images << image_tag end end |
#flash_image_tags ⇒ Object
55 56 57 58 59 60 |
# File 'lib/closer/helpers/capture.rb', line 55 def if @@_images.size > 0 puts @@_images.join("\n") @@_images.clear end end |
#resize_window(width, height) ⇒ Object
44 45 46 47 48 49 50 51 52 53 |
# File 'lib/closer/helpers/capture.rb', line 44 def resize_window(width, height) case Capybara.current_driver when :poltergeist Capybara.current_session.driver.resize(width, height) when :selenium Capybara.current_session.driver.browser.manage.window.resize_to(width, height) when :webkit # TODO end end |