Skip to content

Commit 97a13f0

Browse files
Merge pull request #709 from VWS-Python/more-kwargs-2
Use more kwargs - better typecheck errors
2 parents baac1b8 + fbf470b commit 97a13f0

File tree

2 files changed

+48
-36
lines changed

2 files changed

+48
-36
lines changed

src/vws_web_tools/__init__.py

Lines changed: 47 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,17 @@ def log_in(
4242
Log in to Vuforia web services.
4343
"""
4444
log_in_url = "https://developer.vuforia.com/vui/auth/login"
45-
driver.get(log_in_url)
46-
email_address_input_element = driver.find_element(By.ID, "login_email")
45+
driver.get(url=log_in_url)
46+
email_address_input_element = driver.find_element(
47+
by=By.ID,
48+
value="login_email",
49+
)
4750
email_address_input_element.send_keys(email_address)
4851

49-
password_input_element = driver.find_element(By.ID, "login_password")
52+
password_input_element = driver.find_element(
53+
by=By.ID,
54+
value="login_password",
55+
)
5056
password_input_element.send_keys(password)
5157
password_input_element.send_keys(Keys.RETURN)
5258

@@ -58,7 +64,7 @@ def wait_for_logged_in(driver: WebDriver) -> None: # pragma: no cover
5864
5965
Without this, we sometimes get a redirect to a post-login page.
6066
"""
61-
ten_second_wait = WebDriverWait(driver, 10)
67+
ten_second_wait = WebDriverWait(driver=driver, timeout=10)
6268
ten_second_wait.until(
6369
expected_conditions.presence_of_element_located(
6470
(By.CLASS_NAME, "userNameInHeaderSpan"),
@@ -75,9 +81,9 @@ def create_license(
7581
Create a license.
7682
"""
7783
licenses_url = "https://developer.vuforia.com/vui/develop/licenses"
78-
driver.get(licenses_url)
84+
driver.get(url=licenses_url)
7985

80-
ten_second_wait = WebDriverWait(driver, 10)
86+
ten_second_wait = WebDriverWait(driver=driver, timeout=10)
8187

8288
ten_second_wait.until(
8389
expected_conditions.presence_of_element_located(
@@ -92,8 +98,8 @@ def create_license(
9298
)
9399

94100
get_development_key_button_element = driver.find_element(
95-
By.ID,
96-
"get-development-key",
101+
by=By.ID,
102+
value="get-development-key",
97103
)
98104
get_development_key_button_element.click()
99105
try:
@@ -113,8 +119,8 @@ def create_license(
113119

114120
agree_terms_id = "agree-terms-checkbox"
115121
agree_terms_checkbox_element = driver.find_element(
116-
By.ID,
117-
agree_terms_id,
122+
by=By.ID,
123+
value=agree_terms_id,
118124
)
119125
agree_terms_checkbox_element.submit()
120126

@@ -129,8 +135,8 @@ def create_database(
129135
Create a database.
130136
"""
131137
target_manager_url = "https://developer.vuforia.com/vui/develop/databases"
132-
driver.get(target_manager_url)
133-
ten_second_wait = WebDriverWait(driver, 10)
138+
driver.get(url=target_manager_url)
139+
ten_second_wait = WebDriverWait(driver=driver, timeout=10)
134140

135141
add_database_button_id = "add-dialog-btn"
136142
ten_second_wait.until(
@@ -141,42 +147,48 @@ def create_database(
141147

142148
ten_second_wait.until(
143149
expected_conditions.element_to_be_clickable(
144-
(By.ID, add_database_button_id),
150+
mark=(By.ID, add_database_button_id),
145151
),
146152
)
147153

148154
add_database_button_element = driver.find_element(
149-
By.ID,
150-
add_database_button_id,
155+
by=By.ID,
156+
value=add_database_button_id,
151157
)
152158
add_database_button_element.click()
153159
with contextlib.suppress(WebDriverException):
154160
add_database_button_element.click()
155161
database_name_id = "database-name"
156162
ten_second_wait.until(
157-
expected_conditions.presence_of_element_located(
158-
(By.ID, database_name_id),
163+
method=expected_conditions.presence_of_element_located(
164+
locator=(By.ID, database_name_id),
159165
),
160166
)
161167

162-
database_name_element = driver.find_element(By.ID, database_name_id)
168+
database_name_element = driver.find_element(
169+
by=By.ID,
170+
value=database_name_id,
171+
)
163172
database_name_element.send_keys(database_name)
164173

165-
cloud_type_radio_element = driver.find_element(By.ID, "cloud-radio-btn")
174+
cloud_type_radio_element = driver.find_element(
175+
by=By.ID,
176+
value="cloud-radio-btn",
177+
)
166178
cloud_type_radio_element.click()
167179

168180
license_dropdown_element = Select(
169181
driver.find_element(
170-
By.ID,
171-
"cloud-license-dropdown",
182+
by=By.ID,
183+
value="cloud-license-dropdown",
172184
),
173185
)
174186

175187
# Sleeping 1 second here did not work, so we sleep 5 seconds.
176188
time.sleep(5)
177189
license_dropdown_element.select_by_visible_text(text=license_name)
178190

179-
create_button = driver.find_element(By.ID, "create-btn")
191+
create_button = driver.find_element(by=By.ID, value="create-btn")
180192
create_button.click()
181193
# Without this we might close the driver before the database is created.
182194
time.sleep(5)
@@ -191,16 +203,16 @@ def get_database_details(
191203
Get details of a database.
192204
"""
193205
target_manager_url = "https://developer.vuforia.com/vui/develop/databases"
194-
driver.get(target_manager_url)
195-
ten_second_wait = WebDriverWait(driver, 10)
206+
driver.get(url=target_manager_url)
207+
ten_second_wait = WebDriverWait(driver=driver, timeout=10)
196208

197209
ten_second_wait.until(
198210
expected_conditions.presence_of_element_located(
199211
(By.ID, "table_search"),
200212
),
201213
)
202214

203-
search_input_element = driver.find_element(By.ID, "table_search")
215+
search_input_element = driver.find_element(by=By.ID, value="table_search")
204216
original_first_database_cell_element = ten_second_wait.until(
205217
expected_conditions.element_to_be_clickable(
206218
(By.ID, "table_row_0_project_name"),
@@ -235,20 +247,20 @@ def get_database_details(
235247
time.sleep(1)
236248

237249
client_access_key = driver.find_element(
238-
By.CLASS_NAME,
239-
"client-access-key",
250+
by=By.CLASS_NAME,
251+
value="client-access-key",
240252
).text
241253
client_secret_key = driver.find_element(
242-
By.CLASS_NAME,
243-
"client-secret-key",
254+
by=By.CLASS_NAME,
255+
value="client-secret-key",
244256
).text
245257
server_access_key = driver.find_element(
246-
By.CLASS_NAME,
247-
"server-access-key",
258+
by=By.CLASS_NAME,
259+
value="server-access-key",
248260
).text
249261
server_secret_key = driver.find_element(
250-
By.CLASS_NAME,
251-
"server-secret-key",
262+
by=By.CLASS_NAME,
263+
value="server-secret-key",
252264
).text
253265

254266
return {
@@ -345,9 +357,9 @@ def show_database_details(
345357
}
346358

347359
for key, value in env_var_format_details.items():
348-
click.echo(f"{key}={value}")
360+
click.echo(message=f"{key}={value}")
349361
else:
350-
click.echo(yaml.dump(details), nl=False)
362+
click.echo(message=yaml.dump(data=details), nl=False)
351363

352364

353365
vws_web_tools_group.add_command(create_vws_database)

tests/test_help.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ def test_vws_command_help(
3131
runner = CliRunner()
3232
arguments = [*command, "--help"]
3333
group = vws_web_tools_group
34-
result = runner.invoke(group, arguments, catch_exceptions=False)
34+
result = runner.invoke(cli=group, args=arguments, catch_exceptions=False)
3535
assert result.exit_code == 0
3636
file_regression.check(contents=result.output)

0 commit comments

Comments
 (0)