Create or check file/directory trees described by YAML
This Pytest plugin was generated with Cookiecutter along with @hackebrot's Cookiecutter-pytest-plugin template.
Monkey-patches py.path.local class (the one behind tmpdir fixture) to append yaml_create and yaml_check methods for easy access.
Use it like this:
def test_foo(tmpdir): tmpdir.yaml_create(""" directory_one: file1: Hello World file2: "Including\nLine\nBreaks\n" subdir: file3: | Some raw content here. It is probably better readable. directory_two: arrow.gif: !!binary | R0lGODlhDAAMAIQAAP//9/X17unp5WZmZgAAAOfn515eXvPz7Y6OjuDg4J+fn5 OTk6enp56enmlpaWNjY6Ojo4SEhP/++f/++f/++f/++f/++f/++f/++f/++f/+ +f/++f/++f/++f/++f/++SH+Dk1hZGUgd2l0aCBHSU1QACwAAAAADAAMAAAFLC AgjoEwnuNAFOhpEMTRiggcz4BNJHrv/zCFcLiwMWYNG84BwwEeECcgggoBADs= """) # now these files are created under tmpdir assert tmpdir.join('directory_one', 'file1').read() == 'Hello World' # also can check that directory structure corresponds to the declaration tmpdir.yaml_check(""" directory_one: file1: Content directory_two: {} # empty mapping means empty directory """)
- PyYAML
You can install "pytest-yamltree" via pip from PyPI:
$ pip install pytest-yamltree
- TODO
Contributions are very welcome. Tests can be run with tox, please ensure the coverage at least stays the same before you submit a pull request.
Distributed under the terms of the MIT license, "pytest-yamltree" is free and open source software
If you encounter any problems, please file an issue along with a detailed description.