forked from test_framework/pytest-bdd
'Refactored by Sourcery'
This commit is contained in:
parent
fead99df73
commit
f1ba44ca3e
|
@ -64,7 +64,7 @@ class LogBDDCucumberJSON:
|
|||
result: dict[str, Any] = {}
|
||||
if report.passed or not step["failed"]: # ignore setup/teardown
|
||||
result = {"status": "passed"}
|
||||
elif report.failed and step["failed"]:
|
||||
elif report.failed:
|
||||
result = {"status": "failed", "error_message": str(report.longrepr) if error_message else ""}
|
||||
elif report.skipped:
|
||||
result = {"status": "skipped"}
|
||||
|
|
|
@ -179,8 +179,7 @@ def _show_missing_code_main(config: Config, session: Session) -> None:
|
|||
features, scenarios, steps = parse_feature_files(config.option.features)
|
||||
|
||||
for item in session.items:
|
||||
scenario = getattr(item.obj, "__scenario__", None)
|
||||
if scenario:
|
||||
if scenario := getattr(item.obj, "__scenario__", None):
|
||||
if scenario in scenarios:
|
||||
scenarios.remove(scenario)
|
||||
for step in scenario.steps:
|
||||
|
|
|
@ -90,7 +90,7 @@ class GherkinTerminalReporter(TerminalReporter):
|
|||
self._tw.write("\n")
|
||||
for step in report.scenario["steps"]:
|
||||
self._tw.write(f" {step['keyword']} {step['name']}\n", **scenario_markup)
|
||||
self._tw.write(" " + word, **word_markup)
|
||||
self._tw.write(f" {word}", **word_markup)
|
||||
self._tw.write("\n\n")
|
||||
|
||||
self.stats.setdefault(cat, []).append(rep)
|
||||
|
|
|
@ -65,8 +65,7 @@ def strip_comments(line: str) -> str:
|
|||
|
||||
:return: Stripped line.
|
||||
"""
|
||||
res = COMMENT_RE.search(line)
|
||||
if res:
|
||||
if res := COMMENT_RE.search(line):
|
||||
line = line[: res.start()]
|
||||
return line.strip()
|
||||
|
||||
|
@ -189,7 +188,7 @@ def parse_feature(basedir: str, filename: str, encoding: str = "utf-8") -> Featu
|
|||
scenario.examples.set_param_names([l for l in split_line(parsed_line) if l])
|
||||
mode = types.EXAMPLE_LINE
|
||||
elif mode == types.EXAMPLE_LINE:
|
||||
scenario.examples.add_example([l for l in split_line(stripped_line)])
|
||||
scenario.examples.add_example(list(split_line(stripped_line)))
|
||||
elif mode and mode not in (types.FEATURE, types.TAG):
|
||||
step = Step(name=parsed_line, type=mode, indent=line_indent, line_number=line_number, keyword=keyword)
|
||||
if feature.background and not scenario:
|
||||
|
|
|
@ -46,7 +46,7 @@ def find_fixturedefs_for_step(step: Step, fixturemanager: FixtureManager, nodeid
|
|||
"""Find the fixture defs that can parse a step."""
|
||||
# happens to be that _arg2fixturedefs is changed during the iteration so we use a copy
|
||||
fixture_def_by_name = list(fixturemanager._arg2fixturedefs.items())
|
||||
for i, (fixturename, fixturedefs) in enumerate(fixture_def_by_name):
|
||||
for fixturename, fixturedefs in fixture_def_by_name:
|
||||
for pos, fixturedef in enumerate(fixturedefs):
|
||||
step_func_context = getattr(fixturedef.func, "_pytest_bdd_step_context", None)
|
||||
if step_func_context is None:
|
||||
|
@ -244,14 +244,11 @@ def _get_scenario_decorator(
|
|||
def collect_example_parametrizations(
|
||||
templated_scenario: ScenarioTemplate,
|
||||
) -> list[ParameterSet] | None:
|
||||
# We need to evaluate these iterators and store them as lists, otherwise
|
||||
# we won't be able to do the cartesian product later (the second iterator will be consumed)
|
||||
contexts = list(templated_scenario.examples.as_contexts())
|
||||
if not contexts:
|
||||
if contexts := list(templated_scenario.examples.as_contexts()):
|
||||
return [pytest.param(context, id="-".join(context.values())) for context in contexts]
|
||||
else:
|
||||
return None
|
||||
|
||||
return [pytest.param(context, id="-".join(context.values())) for context in contexts]
|
||||
|
||||
|
||||
def scenario(
|
||||
feature_name: str, scenario_name: str, encoding: str = "utf-8", features_base_dir=None
|
||||
|
@ -263,7 +260,7 @@ def scenario(
|
|||
:param str encoding: Feature file encoding.
|
||||
"""
|
||||
__tracebackhide__ = True
|
||||
scenario_name = str(scenario_name)
|
||||
scenario_name = scenario_name
|
||||
caller_module_path = get_caller_module_path()
|
||||
|
||||
# Get the feature
|
||||
|
|
Loading…
Reference in New Issue