Class: Selenium::RSpec::Reporting::FilePathStrategy
- Inherits:
-
Object
- Object
- Selenium::RSpec::Reporting::FilePathStrategy
- Defined in:
- lib/selenium/rspec/reporting/file_path_strategy.rb
Constant Summary collapse
- REPORT_DEFAULT_FILE_PATH =
File.join(Dir::tmpdir, "selenium_test_report", "index.html")
Instance Attribute Summary collapse
-
#final_report_file_path ⇒ Object
readonly
Returns the value of attribute final_report_file_path.
Instance Method Summary collapse
- #base_report_dir ⇒ Object
- #file_path(relative_file_path) ⇒ Object
- #file_path_for_browser_network_traffic(example) ⇒ Object
- #file_path_for_html_capture(example) ⇒ Object
- #file_path_for_page_screenshot(example) ⇒ Object
- #file_path_for_remote_control_logs(example) ⇒ Object
- #file_path_for_system_screenshot(example) ⇒ Object
-
#initialize(final_report_file_path) ⇒ FilePathStrategy
constructor
A new instance of FilePathStrategy.
- #relative_dir ⇒ Object
- #relative_file_path_for_browser_network_traffic(example) ⇒ Object
- #relative_file_path_for_html_capture(example) ⇒ Object
- #relative_file_path_for_page_screenshot(example) ⇒ Object
- #relative_file_path_for_remote_control_logs(example) ⇒ Object
- #relative_file_path_for_system_screenshot(example) ⇒ Object
Constructor Details
#initialize(final_report_file_path) ⇒ FilePathStrategy
Returns a new instance of FilePathStrategy.
10 11 12 13 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 10 def initialize(final_report_file_path) @final_report_file_path = final_report_file_path || REPORT_DEFAULT_FILE_PATH @relative_dir = nil end |
Instance Attribute Details
#final_report_file_path ⇒ Object (readonly)
Returns the value of attribute final_report_file_path.
6 7 8 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 6 def final_report_file_path @final_report_file_path end |
Instance Method Details
#base_report_dir ⇒ Object
15 16 17 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 15 def base_report_dir @base_report_dir ||= File.dirname(File.(@final_report_file_path)) end |
#file_path(relative_file_path) ⇒ Object
66 67 68 69 70 71 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 66 def file_path(relative_file_path) the_file_path = base_report_dir + "/" + relative_file_path parent_dir = File.dirname(the_file_path) FileUtils.mkdir_p(parent_dir) unless File.directory?(parent_dir) the_file_path end |
#file_path_for_browser_network_traffic(example) ⇒ Object
62 63 64 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 62 def file_path_for_browser_network_traffic(example) file_path relative_file_path_for_browser_network_traffic(example) end |
#file_path_for_html_capture(example) ⇒ Object
46 47 48 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 46 def file_path_for_html_capture(example) file_path relative_file_path_for_html_capture(example) end |
#file_path_for_page_screenshot(example) ⇒ Object
54 55 56 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 54 def file_path_for_page_screenshot(example) file_path relative_file_path_for_page_screenshot(example) end |
#file_path_for_remote_control_logs(example) ⇒ Object
58 59 60 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 58 def file_path_for_remote_control_logs(example) file_path relative_file_path_for_remote_control_logs(example) end |
#file_path_for_system_screenshot(example) ⇒ Object
50 51 52 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 50 def file_path_for_system_screenshot(example) file_path relative_file_path_for_system_screenshot(example) end |
#relative_dir ⇒ Object
19 20 21 22 23 24 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 19 def relative_dir return @relative_dir if @relative_dir file_name_without_extension = File.basename(@final_report_file_path).sub(/\.[^\.]*$/, "") @relative_dir ||= "resources/" + file_name_without_extension end |
#relative_file_path_for_browser_network_traffic(example) ⇒ Object
42 43 44 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 42 def relative_file_path_for_browser_network_traffic(example) "#{relative_dir}/example_#{example.reporting_uid}_browser_network_traffic.log" end |
#relative_file_path_for_html_capture(example) ⇒ Object
26 27 28 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 26 def relative_file_path_for_html_capture(example) "#{relative_dir}/example_#{example.reporting_uid}.html" end |
#relative_file_path_for_page_screenshot(example) ⇒ Object
34 35 36 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 34 def relative_file_path_for_page_screenshot(example) "#{relative_dir}/example_#{example.reporting_uid}_page_screenshot.png" end |
#relative_file_path_for_remote_control_logs(example) ⇒ Object
38 39 40 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 38 def relative_file_path_for_remote_control_logs(example) "#{relative_dir}/example_#{example.reporting_uid}_remote_control.log" end |
#relative_file_path_for_system_screenshot(example) ⇒ Object
30 31 32 |
# File 'lib/selenium/rspec/reporting/file_path_strategy.rb', line 30 def relative_file_path_for_system_screenshot(example) "#{relative_dir}/example_#{example.reporting_uid}_system_screenshot.png" end |