Module: PlaywrightHelper
- Defined in:
- lib/generators/rolemodel/testing/rspec/templates/spec/support/helpers/playwright_helper.rb
Instance Method Summary collapse
-
#pw_page ⇒ Object
Use Playwright's page object.
-
#screenshot(filename = nil, directory: 'tmp/screenshots', print_message: true, **options) ⇒ Object
Helper method for taking screenshots in system tests.
Instance Method Details
#pw_page ⇒ Object
Use Playwright's page object
5 6 7 8 9 |
# File 'lib/generators/rolemodel/testing/rspec/templates/spec/support/helpers/playwright_helper.rb', line 5 def pw_page page.driver.with_playwright_page do |page| return page end end |
#screenshot(filename = nil, directory: 'tmp/screenshots', print_message: true, **options) ⇒ Object
Helper method for taking screenshots in system tests
12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/generators/rolemodel/testing/rspec/templates/spec/support/helpers/playwright_helper.rb', line 12 def screenshot(filename = nil, directory: 'tmp/screenshots', print_message: true, **) = Time.current.strftime('%Y-%m-%d_%H-%M-%S') description = RSpec.current_example.full_description.tr(' ', '_') filename ||= "#{description}_#{}" FileUtils.mkdir_p(directory) pw_page.locator('body').evaluate("element => element.style.overflow = 'visible'") if [:fullPage] pw_page.screenshot(path: "#{directory}/#{filename}.png", animations: 'disabled', **) puts "Screenshot saved to \e[4;96m#{directory}/#{filename}.png\e[0m" if end |