Metadata-Version: 1.1
Name: treeshape
Version: 0.2.0
Summary: Quickly make files and directory structures.
Home-page: UNKNOWN
Author: Jonathan Lange
Author-email: jml@mumak.net
License: UNKNOWN
Description: -*- rst -*-
        ===========
         treeshape
        ===========
        
        treeshape allows you to quickly make file and directory structures on disk.
        
        For example::
        
            from treeshape import (
                CONTENT,
                make_tree,
                PERMISSIONS,
                )
        
            make_tree('.', {
                'logs/': None,
                'README': {CONTENT: "A simple directory layout\n"},
                'data/input': {CONTENT: "All of our input data\n"},
                'bin/script': {CONTENT: "#!/bin/sh\necho 'Hello'\n", PERMISSIONS: 0755},
                })
        
        Will create a directory structure that looks like this::
        
            $ find .
            .
            ./logs
            ./data
            ./data/input
            ./README
            $ cat README
            A simple directory layout
            $ cat data/input
            All of our input data
        
        This is particularly useful for tests that touch the disk.
        
        If being explicit isn't really your thing, you can also create the same
        directory structure from a rough specification::
        
            from treeshape import (
                from_rough_spec,
                make_tree,
                )
        
            make_tree('.', from_rough_spec([
                'logs/',
                ('README', "A simple directory layout\n"),
                ('data/input', "All of our input data\n"),
                ('bin/script', "#!/bin/sh\necho 'Hello'\n", 0755),
                ]))
        
        
        This is also provided as a ``Fixture`` (see python-fixtures_). Thus, if you
        are using testtools_, then you can also do this during your tests::
        
            def test_a_thing(self):
                self.useFixture(FileTree(from_rough_spec([
                    'logs/',
                    ('README', "A simple directory layout\n"),
                    ('data/input', "All of our input data\n"),
                    ])))
                # your test here
        
        
        .. _python-fixtures: http://pypi.python.org/pypi/fixtures
        .. _testtools: http://pypi.python.org/pypi/testtools
        
Platform: UNKNOWN
Classifier: Development Status :: 6 - Mature
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Testing
