Create or check file/directory trees described by YAML
Project description
Create or check file/directory trees described by YAML
This Pytest plugin was generated with Cookiecutter along with @hackebrot’s Cookiecutter-pytest-plugin template.
Features
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 """)
Requirements
PyYAML
Installation
You can install “pytest-yamltree” via pip from PyPI:
$ pip install pytest-yamltree
Usage
TODO
Contributing
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.
License
Distributed under the terms of the MIT license, “pytest-yamltree” is free and open source software
Issues
If you encounter any problems, please file an issue along with a detailed description.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for pytest_yamltree-0.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f60436933b1ff7067ebdb9f4a2f62e3521a29928c1e149c7046959a519bfcf2 |
|
MD5 | 2a45781b8c7f05a9f83201bb8fd520b4 |
|
BLAKE2b-256 | 0ee17f67b7638b91963b4db4562f526a16ff19fe1dc16974b9c3a0566ed75429 |