Skip to content

Commit 5eaa6e4

Browse files
committed
[rb] implement endpoint for deleting network conditions
1 parent 20b5cdb commit 5eaa6e4

File tree

3 files changed

+26
-0
lines changed

3 files changed

+26
-0
lines changed

rb/lib/selenium/webdriver/chrome/features.rb

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ module Features
3131
stop_casting: [:post, 'session/:session_id/goog/cast/stop_casting'],
3232
get_network_conditions: [:get, 'session/:session_id/chromium/network_conditions'],
3333
set_network_conditions: [:post, 'session/:session_id/chromium/network_conditions'],
34+
delete_network_conditions: [:delete, 'session/:session_id/chromium/network_conditions'],
3435
send_command: [:post, 'session/:session_id/goog/cdp/execute'],
3536
get_available_log_types: [:get, 'session/:session_id/se/log/types'],
3637
get_log: [:post, 'session/:session_id/se/log']
@@ -72,6 +73,10 @@ def network_conditions=(conditions)
7273
execute :set_network_conditions, {}, {network_conditions: conditions}
7374
end
7475

76+
def delete_network_conditions
77+
execute :delete_network_conditions
78+
end
79+
7580
def send_command(command_params)
7681
execute :send_command, {}, command_params
7782
end

rb/lib/selenium/webdriver/common/driver_extensions/has_network_conditions.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,14 @@ def network_conditions=(conditions)
4545
@bridge.network_conditions = conditions
4646
end
4747

48+
#
49+
# Resets Chromium network emulation settings.
50+
#
51+
52+
def delete_network_conditions
53+
@bridge.delete_network_conditions
54+
end
55+
4856
end # HasNetworkConditions
4957
end # DriverExtensions
5058
end # WebDriver

rb/spec/integration/selenium/webdriver/chrome/driver_spec.rb

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,19 @@ module Chrome
126126
end
127127
end
128128

129+
it 'manages network features' do
130+
driver.network_conditions = {offline: false, latency: 56, download_throughput: 789, upload_throughput: 600}
131+
conditions = driver.network_conditions
132+
expect(conditions['offline']).to eq false
133+
expect(conditions['latency']).to eq 56
134+
expect(conditions['download_throughput']).to eq 789
135+
expect(conditions['upload_throughput']).to eq 600
136+
driver.delete_network_conditions
137+
138+
error = /network conditions must be set before it can be retrieved/
139+
expect { driver.network_conditions }.to raise_error(Error::UnknownError, error)
140+
end
141+
129142
# This requires cast sinks to run
130143
it 'casts' do
131144
# Does not get list correctly the first time for some reason

0 commit comments

Comments
 (0)