Skip to content

Commit 7c4a1b2

Browse files
committed
[rb] move print functionality into driver extension
1 parent f0c2dea commit 7c4a1b2

File tree

4 files changed

+35
-12
lines changed

4 files changed

+35
-12
lines changed

rb/lib/selenium/webdriver/chrome/driver.rb

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ class Driver < WebDriver::Driver
3434
include DriverExtensions::HasDevTools
3535
include DriverExtensions::HasAuthentication
3636
include DriverExtensions::HasLogEvents
37+
include DriverExtensions::PrintsPage
3738

3839
def browser
3940
:chrome
@@ -47,12 +48,6 @@ def execute_cdp(cmd, **params)
4748
@bridge.send_command(cmd: cmd, params: params)
4849
end
4950

50-
def print_page(**options)
51-
options[:page_ranges] &&= Array(options[:page_ranges])
52-
53-
@bridge.print_page(options)
54-
end
55-
5651
private
5752

5853
def debugger_address

rb/lib/selenium/webdriver/common.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@
6060
require 'selenium/webdriver/common/driver_extensions/has_network_connection'
6161
require 'selenium/webdriver/common/driver_extensions/has_permissions'
6262
require 'selenium/webdriver/common/driver_extensions/has_debugger'
63+
require 'selenium/webdriver/common/driver_extensions/prints_page'
6364
require 'selenium/webdriver/common/driver_extensions/uploads_files'
6465
require 'selenium/webdriver/common/driver_extensions/has_addons'
6566
require 'selenium/webdriver/common/driver_extensions/has_devtools'
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# frozen_string_literal: true
2+
3+
# Licensed to the Software Freedom Conservancy (SFC) under one
4+
# or more contributor license agreements. See the NOTICE file
5+
# distributed with this work for additional information
6+
# regarding copyright ownership. The SFC licenses this file
7+
# to you under the Apache License, Version 2.0 (the
8+
# "License"); you may not use this file except in compliance
9+
# with the License. You may obtain a copy of the License at
10+
#
11+
# http://www.apache.org/licenses/LICENSE-2.0
12+
#
13+
# Unless required by applicable law or agreed to in writing,
14+
# software distributed under the License is distributed on an
15+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16+
# KIND, either express or implied. See the License for the
17+
# specific language governing permissions and limitations
18+
# under the License.
19+
20+
module Selenium
21+
module WebDriver
22+
module DriverExtensions
23+
module PrintsPage
24+
def print_page(**options)
25+
options[:page_ranges] &&= Array(options[:page_ranges])
26+
27+
@bridge.print_page(options)
28+
end
29+
end # PrintsPage
30+
end # DriverExtensions
31+
end # WebDriver
32+
end # Selenium

rb/lib/selenium/webdriver/firefox/driver.rb

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ module Firefox
2929
class Driver < WebDriver::Driver
3030
include DriverExtensions::HasAddons
3131
include DriverExtensions::HasWebStorage
32+
include DriverExtensions::PrintsPage
3233

3334
def browser
3435
:firefox
@@ -37,12 +38,6 @@ def browser
3738
def bridge_class
3839
Bridge
3940
end
40-
41-
def print_page(**options)
42-
options[:page_ranges] &&= Array(options[:page_ranges])
43-
44-
@bridge.print_page(options)
45-
end
4641
end # Driver
4742
end # Firefox
4843
end # WebDriver

0 commit comments

Comments
 (0)