Module: Appom::Screenshot
- Defined in:
- lib/appom/screenshot.rb
Overview
Screenshot functionality for Appom automation framework Provides screenshot capture, management, and comparison utilities
Defined Under Namespace
Classes: ScreenshotComparison, ScreenshotManager
Class Attribute Summary collapse
Class Method Summary collapse
-
.capture(name = 'screenshot') ⇒ Object
Convenience methods.
- .capture_before_after(name) ⇒ Object
- .capture_on_failure(test_name, exception = nil) ⇒ Object
- .capture_sequence(name) ⇒ Object
- .cleanup_old(days_old: 7) ⇒ Object
- .compare(image1, image2) ⇒ Object
-
.configure(directory: nil, format: nil, auto_timestamp: nil, quality: nil) ⇒ Object
Configure screenshot settings.
- .similar?(image1, image2) ⇒ Boolean
- .stats ⇒ Object
Class Attribute Details
.manager ⇒ Object
315 316 317 |
# File 'lib/appom/screenshot.rb', line 315 def manager @manager ||= ScreenshotManager.new end |
Class Method Details
.capture(name = 'screenshot') ⇒ Object
Convenience methods
339 340 341 |
# File 'lib/appom/screenshot.rb', line 339 def capture(name = 'screenshot', **) manager.capture(name, **) end |
.capture_before_after(name) ⇒ Object
347 348 349 |
# File 'lib/appom/screenshot.rb', line 347 def capture_before_after(name, &) manager.capture_before_after(name, &) end |
.capture_on_failure(test_name, exception = nil) ⇒ Object
343 344 345 |
# File 'lib/appom/screenshot.rb', line 343 def capture_on_failure(test_name, exception = nil) manager.capture_on_failure(test_name, exception) end |
.capture_sequence(name) ⇒ Object
351 352 353 |
# File 'lib/appom/screenshot.rb', line 351 def capture_sequence(name, **, &) manager.capture_sequence(name, **, &) end |
.cleanup_old(days_old: 7) ⇒ Object
355 356 357 |
# File 'lib/appom/screenshot.rb', line 355 def cleanup_old(days_old: 7) manager.cleanup_old_screenshots(days_old: days_old) end |
.compare(image1, image2) ⇒ Object
363 364 365 |
# File 'lib/appom/screenshot.rb', line 363 def compare(image1, image2, **) ScreenshotComparison.new(**).compare(image1, image2) end |
.configure(directory: nil, format: nil, auto_timestamp: nil, quality: nil) ⇒ Object
Configure screenshot settings
320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 |
# File 'lib/appom/screenshot.rb', line 320 def configure(directory: nil, format: nil, auto_timestamp: nil, quality: nil) current_config = { directory: manager.directory, format: manager.format, auto_timestamp: manager., quality: manager.quality, } new_config = current_config.merge( directory: directory || current_config[:directory], format: format || current_config[:format], auto_timestamp: .nil? ? current_config[:auto_timestamp] : , quality: quality || current_config[:quality], ) @manager = ScreenshotManager.new(**new_config) end |
.similar?(image1, image2) ⇒ Boolean
367 368 369 |
# File 'lib/appom/screenshot.rb', line 367 def similar?(image1, image2, **) ScreenshotComparison.new(**).similar?(image1, image2) end |
.stats ⇒ Object
359 360 361 |
# File 'lib/appom/screenshot.rb', line 359 def stats manager.stats end |