Skip to content

Commit dcf96fb

Browse files
committed
add more ruff-lint checks
1 parent dd83e19 commit dcf96fb

23 files changed

+94
-73
lines changed

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@
292292
intersphinx_mapping = {'python': ('https://docs.python.org/3', None)}
293293

294294

295-
def remove_module_docstring(app, what, name, obj, options, lines):
295+
def remove_module_docstring(app, what, name, obj, options, lines): # noqa: ARG001
296296
"""Remove all module docstrings to exclude license header"""
297297
if what == 'module':
298298
del lines[:]

pyproject.toml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,15 +114,18 @@ target-version = "py310"
114114
select = [
115115
"E", # pycodestyle errors
116116
"W", # pycodestyle warnings
117-
"F", # Pyflakes
117+
"F", # pyflakes
118118
"I", # isort
119119
"UP", # pyupgrade
120120
"N", # pep8-naming
121-
"B", # flake8-bugbear
122121
"A", # flake8-builtins
122+
"B", # flake8-bugbear
123+
"G", # flake8-logging-format
124+
"ARG", # flake8-unused-arguments
123125
"COM", # flake8-commas
124126
"C4", # flake8-comprehensions
125127
"PT", # flake8-pytest-style
128+
"T20", # flake8-print
126129
"RUF", # Ruff-specific rules
127130
]
128131
# Rules to ignore

toolium/behave/env_utils.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@ def __execute_steps_by_action(self, context, action):
226226
for item in self.actions[action]:
227227
try:
228228
self.__print_step_by_console(item)
229-
self.logger.debug(f'Executing step defined in {action}: {item!r}')
229+
self.logger.debug('Executing step defined in %s: %r', action, item)
230230
context.execute_steps(f"""{GIVEN_PREFIX}{self.__remove_prefix(item)}""")
231231
except Exception as exc:
232232
if action == ACTIONS_BEFORE_FEATURE:
@@ -299,7 +299,7 @@ def execute_after_feature_steps(self, context):
299299
if scenario.should_run(context.config):
300300
self.fail_first_step_precondition_exception(scenario, error_message)
301301
if len(scenario.background_steps) > 0:
302-
context.logger.warn('Background from scenario status udpated to fail')
302+
context.logger.warning('Background from scenario status udpated to fail')
303303
raise Exception(f'Before feature steps have failed: {error_message}')
304304

305305
def fail_first_step_precondition_exception(self, scenario, error_message):

toolium/config_driver.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -399,7 +399,7 @@ def _add_chrome_additional_options(self, options):
399399
self.logger.debug('Added Chrome additional option: %s = %s', key, value)
400400
options.add_experimental_option(key, value)
401401
except Exception as exc:
402-
self.logger.warning(f'Chrome options "{chrome_options}" can not be added: {exc}')
402+
self.logger.warning('Chrome options "%s" can not be added: %s', chrome_options, exc)
403403

404404
def _add_chrome_arguments(self, options):
405405
"""Add Chrome arguments from properties file

toolium/driver_wrapper.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ def configure_logger(self, tc_config_log_filename=None, tc_output_log_filename=N
120120
try:
121121
logging.config.fileConfig(config_log_filename, {'logfilename': output_log_filename}, False)
122122
except Exception as exc:
123-
print(f"[WARN] Error reading logging config file '{config_log_filename}': {exc}")
123+
print(f"[WARN] Error reading logging config file '{config_log_filename}': {exc}") # noqa: T201
124124
self.config_log_filename = config_log_filename
125125
self.output_log_filename = output_log_filename
126126
self.logger = logging.getLogger(__name__)

toolium/driver_wrappers_pool.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,8 @@ def stop_drivers(cls, maintain_default=False):
172172
driver_wrapper.stop()
173173
except Exception as e:
174174
driver_wrapper.logger.warning(
175-
f'Capture exceptions to avoid errors in teardown method due to session timeouts: \n {e}',
175+
'Capture exceptions to avoid errors in teardown method due to session timeouts: \n %s',
176+
e,
176177
)
177178

178179
@classmethod
@@ -203,7 +204,7 @@ def download_videos(cls, name, test_passed=True, maintain_default=False):
203204
)
204205
except Exception as exc:
205206
# Capture exceptions to avoid errors in teardown method due to session timeouts
206-
driver_wrapper.logger.warning(f'Error downloading videos: {exc}')
207+
driver_wrapper.logger.warning('Error downloading videos: %s', exc)
207208
driver_index += 1
208209

209210
@classmethod
@@ -254,7 +255,7 @@ def save_all_webdriver_or_ggr_logs(cls, test_name, test_passed, ggr=False):
254255
driver_wrapper.utils.save_webdriver_logs(log_file_name)
255256
except Exception as exc:
256257
# Capture exceptions to avoid errors in teardown method due to session timeouts
257-
driver_wrapper.logger.warning(f'Error downloading webdriver logs: {exc}')
258+
driver_wrapper.logger.warning('Error downloading webdriver logs: %s', exc)
258259
driver_index += 1
259260

260261
@staticmethod

toolium/selenoid.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ def __download_file(self, url, path_file, timeout):
8383
"""
8484
status_code = 0
8585
init_time = time.time()
86-
self.driver_wrapper.logger.info(f'Downloading file from Selenoid node: {url}')
86+
self.driver_wrapper.logger.info('Downloading file from Selenoid node: %s', url)
8787
# retries policy
8888
while status_code != STATUS_OK and time.time() - init_time < float(timeout):
8989
body = requests.get(url)
@@ -100,13 +100,15 @@ def __download_file(self, url, path_file, timeout):
100100
fp.write(body.content)
101101
fp.close()
102102
self.driver_wrapper.logger.info(
103-
f'File has been downloaded successfully to "{path_file}" and took {took} seconds',
103+
'File has been downloaded successfully to "%s" and took %f seconds',
104+
path_file,
105+
took,
104106
)
105107
return True
106108
except OSError as e:
107-
self.driver_wrapper.logger.warning(f'Error writing downloaded file in "{path_file}":\n {e}')
109+
self.driver_wrapper.logger.warning('Error writing downloaded file in "%s":\n %s', path_file, e)
108110
else:
109-
self.driver_wrapper.logger.warning(f'File "{url}" does not exist in the server after {timeout} seconds')
111+
self.driver_wrapper.logger.warning('File "%s" does not exist in the server after %s seconds', url, timeout)
110112
return False
111113

112114
def __remove_file(self, url):
@@ -126,7 +128,7 @@ def get_selenoid_info(self):
126128
selenoid_info = requests.get(host_url).json()
127129
except Exception:
128130
return None
129-
self.driver_wrapper.logger.info(f'Selenoid host info: {selenoid_info}')
131+
self.driver_wrapper.logger.info('Selenoid host info: %s', selenoid_info)
130132
return selenoid_info
131133

132134
def is_the_session_still_active(self):
@@ -202,7 +204,9 @@ def is_the_session_still_active(self):
202204
response = requests.get(host_url).json()['browsers'][self.browser]
203205
except Exception as e:
204206
self.driver_wrapper.logger.warning(
205-
f'the GGR status request has failed: \nResponse: {response.content} \nError message: {e}\n',
207+
'the GGR status request has failed: \nResponse: %s \nError message: %s\n',
208+
response.content,
209+
e,
206210
)
207211
return None
208212
for browser in response:

toolium/test/behave/test_environment.py

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def test_get_jira_key_from_scenario(tag_list, jira_key):
5656

5757

5858
@mock.patch('toolium.behave.environment.create_and_configure_wrapper')
59-
def test_before_all(create_and_configure_wrapper):
59+
def test_before_all(create_and_configure_wrapper): # noqa: ARG001
6060
# Create context mock
6161
context = mock.MagicMock()
6262
context.config.userdata.get.return_value = None
@@ -72,7 +72,7 @@ def test_before_all(create_and_configure_wrapper):
7272

7373

7474
@mock.patch('toolium.behave.environment.create_and_configure_wrapper')
75-
def test_before_all_config_environment(create_and_configure_wrapper):
75+
def test_before_all_config_environment(create_and_configure_wrapper): # noqa: ARG001
7676
# Create context mock
7777
context = mock.MagicMock()
7878
context.config.userdata.get.side_effect = lambda x: 'os' if x == 'TOOLIUM_CONFIG_ENVIRONMENT' else None
@@ -136,10 +136,9 @@ def test_before_feature_reuse_driver_no_driver(start_driver):
136136
assert context.reuse_driver_from_tags is True
137137

138138

139-
@mock.patch('toolium.behave.environment.add_assert_screenshot_methods')
140139
@mock.patch('toolium.behave.environment.DriverWrappersPool')
141140
@mock.patch('toolium.behave.environment.start_driver')
142-
def test_before_scenario(start_driver, DriverWrappersPool, add_assert_screenshot_methods): # noqa: N803
141+
def test_before_scenario(start_driver, DriverWrappersPool): # noqa: N803
143142
# Create context mock
144143
context = mock.MagicMock()
145144
context.toolium_config = ExtendedConfigParser()
@@ -153,10 +152,9 @@ def test_before_scenario(start_driver, DriverWrappersPool, add_assert_screenshot
153152
DriverWrappersPool.stop_drivers.assert_not_called()
154153

155154

156-
@mock.patch('toolium.behave.environment.add_assert_screenshot_methods')
157155
@mock.patch('toolium.behave.environment.DriverWrappersPool')
158156
@mock.patch('toolium.behave.environment.start_driver')
159-
def test_before_scenario_reset_driver(start_driver, DriverWrappersPool, add_assert_screenshot_methods): # noqa: N803
157+
def test_before_scenario_reset_driver(start_driver, DriverWrappersPool): # noqa: N803
160158
# Create context mock
161159
context = mock.MagicMock()
162160
context.toolium_config = ExtendedConfigParser()
@@ -170,9 +168,8 @@ def test_before_scenario_reset_driver(start_driver, DriverWrappersPool, add_asse
170168
DriverWrappersPool.stop_drivers.assert_called_once_with()
171169

172170

173-
@mock.patch('toolium.behave.environment.add_assert_screenshot_methods')
174171
@mock.patch('toolium.behave.environment.start_driver')
175-
def test_before_scenario_no_driver(start_driver, add_assert_screenshot_methods):
172+
def test_before_scenario_no_driver(start_driver):
176173
# Create context mock
177174
context = mock.MagicMock()
178175
context.toolium_config = ExtendedConfigParser()
@@ -185,9 +182,8 @@ def test_before_scenario_no_driver(start_driver, add_assert_screenshot_methods):
185182
start_driver.assert_called_once_with(context, True)
186183

187184

188-
@mock.patch('toolium.behave.environment.add_assert_screenshot_methods')
189185
@mock.patch('toolium.behave.environment.start_driver')
190-
def test_before_scenario_no_driver_feature(start_driver, add_assert_screenshot_methods):
186+
def test_before_scenario_no_driver_feature(start_driver):
191187
# Create context mock
192188
context = mock.MagicMock()
193189
context.toolium_config = ExtendedConfigParser()

toolium/test/pageelements/test_derived_page_element.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ def test_set_input_text_shadowroot_quotation_marks(driver_wrapper):
154154
driver_wrapper.driver.execute_script.assert_called_once_with(expected_script)
155155

156156

157-
def test_get_selected_option(driver_wrapper):
157+
def test_get_selected_option():
158158
select_page_element.SeleniumSelect = get_mock_select()
159159

160160
option = LoginPageObject().language.option
@@ -179,7 +179,7 @@ def test_click_button(driver_wrapper):
179179
mock_element.click.assert_called_once_with()
180180

181181

182-
def test_group_reset_object(driver_wrapper):
182+
def test_group_reset_object():
183183
login_page = LoginPageObject()
184184

185185
# Check that web elements are empty

toolium/test/test_config_driver_appium.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ def utils():
5050

5151
@mock.patch('toolium.config_driver.appiumdriver')
5252
@pytest.mark.parametrize('driver_type', appium_driver_types)
53-
def test_create_local_driver_appium(appiumdriver_mock, driver_type, config, utils):
53+
def test_create_local_driver_appium(appiumdriver_mock, driver_type, config, utils): # noqa: ARG001
5454
utils.get_driver_name.return_value = driver_type
5555
config.set('Driver', 'type', driver_type)
5656
config_driver = ConfigDriver(config, utils)

0 commit comments

Comments
 (0)