Skip to content

Commit 200b717

Browse files
authored
Replace direct type comparisons with isinstance (allure-framework#760)
1 parent 7b5f698 commit 200b717

File tree

5 files changed

+18
-15
lines changed

5 files changed

+18
-15
lines changed

allure-behave/src/utils.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,9 +115,17 @@ def get_hook_name(name, parameters):
115115
def step_status_details(result):
116116
if result.exception:
117117
# workaround for https://github.com/behave/behave/pull/616
118-
trace = "\n".join(result.exc_traceback) if type(result.exc_traceback) == list else format_traceback(
119-
result.exc_traceback)
120-
return StatusDetails(message=format_exception(type(result.exception), result.exception), trace=trace)
118+
trace = "\n".join(result.exc_traceback) if isinstance(
119+
result.exc_traceback,
120+
list
121+
) else format_traceback(result.exc_traceback)
122+
return StatusDetails(
123+
message=format_exception(
124+
type(result.exception),
125+
result.exception
126+
),
127+
trace=trace
128+
)
121129

122130
elif result.status == 'undefined':
123131
message = '\nYou can implement step definitions for undefined steps with these snippets:\n\n'

allure-nose2/src/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ def _get_attrs(obj, keys):
4747
pairs = set()
4848
for key in keys:
4949
values = getattr(obj, key, ())
50-
for value in (values,) if type(values) == str else values:
50+
for value in (values,) if isinstance(values, str) else values:
5151
pairs.add((key, value))
5252
return pairs
5353

allure-python-commons/src/lifecycle.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def _last_item_uuid(self, item_type=None):
3030
item = self._items.get(uuid)
3131
if item_type is None:
3232
return uuid
33-
elif type(item) == item_type or isinstance(item, item_type):
33+
elif isinstance(item, item_type):
3434
return uuid
3535

3636
@contextmanager
@@ -75,7 +75,7 @@ def start_container(self, uuid=None):
7575

7676
def containers(self):
7777
for item in self._items.values():
78-
if type(item) == TestResultContainer:
78+
if isinstance(item, TestResultContainer):
7979
yield item
8080

8181
@contextmanager

allure-python-commons/src/logger.py

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,7 @@ def __init__(self, report_dir, clean=False):
2121
def _report_item(self, item):
2222
indent = INDENT if os.environ.get("ALLURE_INDENT_OUTPUT") else None
2323
filename = item.file_pattern.format(prefix=uuid.uuid4())
24-
data = asdict(
25-
item,
26-
filter=lambda attr, value: not (
27-
type(value) != bool and not bool(value)
28-
)
29-
)
24+
data = asdict(item, filter=lambda _, v: v or v is False)
3025
with io.open(self._report_dir / filename, 'w', encoding='utf8') as json_file:
3126
json.dump(data, json_file, indent=indent, ensure_ascii=False)
3227

@@ -62,12 +57,12 @@ def __init__(self):
6257

6358
@hookimpl
6459
def report_result(self, result):
65-
data = asdict(result, filter=lambda attr, value: not (type(value) != bool and not bool(value)))
60+
data = asdict(result, filter=lambda _, v: v or v is False)
6661
self.test_cases.append(data)
6762

6863
@hookimpl
6964
def report_container(self, container):
70-
data = asdict(container, filter=lambda attr, value: not (type(value) != bool and not bool(value)))
65+
data = asdict(container, filter=lambda _, v: v or v is False)
7166
self.test_containers.append(data)
7267

7368
@hookimpl

allure-python-commons/src/reporter.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ def get_last_item(self, item_type=None):
7979
for _uuid in reversed(self._items):
8080
if item_type is None:
8181
return self._items.get(_uuid)
82-
if type(self._items[_uuid]) == item_type:
82+
if isinstance(self._items[_uuid], item_type):
8383
return self._items.get(_uuid)
8484

8585
def start_group(self, uuid, group):

0 commit comments

Comments
 (0)