Module: Capybara::Screenshot
- Defined in:
- lib/capybara-screenshot.rb,
lib/capybara-screenshot/rspec.rb,
lib/capybara-screenshot/saver.rb,
lib/capybara-screenshot/pruner.rb,
lib/capybara-screenshot/version.rb,
lib/capybara-screenshot/testunit.rb,
lib/capybara-screenshot/rspec/base_reporter.rb,
lib/capybara-screenshot/rspec/text_reporter.rb,
lib/capybara-screenshot/rspec/html_link_reporter.rb,
lib/capybara-screenshot/rspec/html_embed_reporter.rb,
lib/capybara-screenshot/rspec/textmate_link_reporter.rb
Defined Under Namespace
Modules: MiniTestPlugin, RSpec, Spinach Classes: Pruner, Saver
Constant Summary collapse
- VERSION =
"1.0.3"
Class Attribute Summary collapse
-
.append_timestamp ⇒ Object
Returns the value of attribute append_timestamp.
-
.autosave_on_failure ⇒ Object
Returns the value of attribute autosave_on_failure.
-
.filename_prefix_formatters ⇒ Object
Returns the value of attribute filename_prefix_formatters.
- .final_session_name ⇒ Object
-
.prune_strategy ⇒ Object
Returns the value of attribute prune_strategy.
-
.registered_drivers ⇒ Object
Returns the value of attribute registered_drivers.
-
.testunit_paths ⇒ Object
Returns the value of attribute testunit_paths.
-
.webkit_options ⇒ Object
Returns the value of attribute webkit_options.
Class Method Summary collapse
- .append_screenshot_path=(value) ⇒ Object
- .capybara_root ⇒ Object
- .filename_prefix_for(test_type, test) ⇒ Object
-
.prune(options = {}) ⇒ Object
Prune screenshots based on prune_strategy Will run only once unless force:true.
- .register_driver(driver, &block) ⇒ Object
- .register_filename_prefix_formatter(test_type, &block) ⇒ Object
-
.reset_prune_history ⇒ Object
Reset prune history allowing further prunining on next failure.
- .screenshot_and_open_image ⇒ Object (also: screen_shot_and_open_image)
- .screenshot_and_save_page ⇒ Object (also: screen_shot_and_save_page)
Class Attribute Details
.append_timestamp ⇒ Object
Returns the value of attribute append_timestamp.
7 8 9 |
# File 'lib/capybara-screenshot.rb', line 7 def @append_timestamp end |
.autosave_on_failure ⇒ Object
Returns the value of attribute autosave_on_failure.
4 5 6 |
# File 'lib/capybara-screenshot.rb', line 4 def autosave_on_failure @autosave_on_failure end |
.filename_prefix_formatters ⇒ Object
Returns the value of attribute filename_prefix_formatters.
6 7 8 |
# File 'lib/capybara-screenshot.rb', line 6 def filename_prefix_formatters @filename_prefix_formatters end |
.final_session_name ⇒ Object
76 77 78 |
# File 'lib/capybara-screenshot.rb', line 76 def self.final_session_name @final_session_name || Capybara.session_name || :default end |
.prune_strategy ⇒ Object
Returns the value of attribute prune_strategy.
10 11 12 |
# File 'lib/capybara-screenshot.rb', line 10 def prune_strategy @prune_strategy end |
.registered_drivers ⇒ Object
Returns the value of attribute registered_drivers.
5 6 7 |
# File 'lib/capybara-screenshot.rb', line 5 def registered_drivers @registered_drivers end |
.testunit_paths ⇒ Object
Returns the value of attribute testunit_paths.
5 6 7 |
# File 'lib/capybara-screenshot/testunit.rb', line 5 def testunit_paths @testunit_paths end |
.webkit_options ⇒ Object
Returns the value of attribute webkit_options.
8 9 10 |
# File 'lib/capybara-screenshot.rb', line 8 def @webkit_options end |
Class Method Details
.append_screenshot_path=(value) ⇒ Object
20 21 22 23 24 |
# File 'lib/capybara-screenshot.rb', line 20 def self.append_screenshot_path=(value) $stderr.puts "WARNING: Capybara::Screenshot.append_screenshot_path is deprecated. " + "Please use Capybara::Screenshot::RSpec.add_link_to_screenshot_for_failed_examples instead." RSpec.add_link_to_screenshot_for_failed_examples = value end |
.capybara_root ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/capybara-screenshot.rb', line 52 def self. return @capybara_root if defined?(@capybara_root) #If the path isn't set, default to the current directory = Capybara.save_and_open_page_path || '.' @capybara = if defined?(::Rails) ::Rails.root.join elsif defined?(Padrino) Padrino.root elsif defined?(Sinatra) File.join(Sinatra::Application.root, ) else end.to_s end |
.filename_prefix_for(test_type, test) ⇒ Object
46 47 48 49 50 |
# File 'lib/capybara-screenshot.rb', line 46 def self.filename_prefix_for(test_type, test) filename_prefix_formatters.fetch(test_type) { |key| filename_prefix_formatters[:default] }.call(test) end |
.prune(options = {}) ⇒ Object
Prune screenshots based on prune_strategy Will run only once unless force:true
82 83 84 85 86 |
# File 'lib/capybara-screenshot.rb', line 82 def self.prune( = {}) reset_prune_history if [:force] Capybara::Screenshot::Pruner.new(Capybara::Screenshot.prune_strategy).prune_old_screenshots unless @pruned_previous_screenshots @pruned_previous_screenshots = true end |
.register_driver(driver, &block) ⇒ Object
68 69 70 |
# File 'lib/capybara-screenshot.rb', line 68 def self.register_driver(driver, &block) self.registered_drivers[driver] = block end |
.register_filename_prefix_formatter(test_type, &block) ⇒ Object
72 73 74 |
# File 'lib/capybara-screenshot.rb', line 72 def self.register_filename_prefix_formatter(test_type, &block) self.filename_prefix_formatters[test_type] = block end |
.reset_prune_history ⇒ Object
Reset prune history allowing further prunining on next failure
89 90 91 |
# File 'lib/capybara-screenshot.rb', line 89 def self.reset_prune_history @pruned_previous_screenshots = nil end |
.screenshot_and_open_image ⇒ Object Also known as: screen_shot_and_open_image
32 33 34 35 36 37 38 39 |
# File 'lib/capybara-screenshot.rb', line 32 def self.screenshot_and_open_image require "launchy" saver = Saver.new(Capybara, Capybara.page, false) saver.save Launchy.open saver.screenshot_path {:html => nil, :image => saver.screenshot_path} end |