* Encapsulate all multiline strings in triple-quotes in Gherkin files
Since pytest-bdd v8.0.0 uses the official Gherkin parser, multiline
strings must now be encapsulated by triple-quotes.
See:
- https://pytest-bdd.readthedocs.io/en/stable/#id2
- https://pytest-bdd.readthedocs.io/en/stable/#docstrings
* Remove comments in Gherkin files causing test breakage
These comments break the step matching.
* Fix compatibility of step-functions matching on multiple lines
In pytest-bdd v8.0.0 it is no longer possible to match based on multiple
lines, which breaks essentially all steps that support docstrings. Solve
this by adding a wrapper-function for each of these instances, that
matches the docstring step, and calls the original function.
So, what used to be:
@then(parse("the output should match\n{regex}"))
@then(parse('the output should match "{regex}"'))
def output_should_match(regex, cli_run):
...
Is now:
@then(parse("the output should match"))
def output_should_match_docstring(cli_run, docstring):
output_should_match(docstring, cli_run)
@then(parse('the output should match "{regex}"'))
def output_should_match(regex, cli_run):
...
There is possibly a way around this that is much better than what I've
done here, but this is a start at least.
* Update version requirement of pytest-bdd to >=8.0
* Update tox config to match poetry config
---------
Co-authored-by: Micah Jerome Ellison <micah.jerome.ellison@gmail.com>
* update copyright symbols to unicode
* clean up version screen/copyright notice
* small change to make commands more similar
* update imports to appease isort
* fix test
* update one more file merged since PR was open
* Re-enable failing directory journal import tests
* Appropriately track journal name and modified entries in FolderJournal when importing
* Run make format