view tests/test_factory.txt @ 81:9203ca3a5182

comment
author Jeff Hammel <jhammel@mozilla.com>
date Sat, 25 Jun 2011 11:05:06 -0700
parents b98cc94ffcfa
children 418289c0fe3c
line wrap: on
line source

Test pyloader's Factory
=======================

Boilerplate::

    >>> import os
    >>> from pyloader.factory import PyFactory
    >>> objects = os.path.join(here, 'objects.py')

Construct a factory::

    >>> factory = PyFactory()

Make a configuration::

    >>> config = {'': {'path': objects + ':stringsort', 'args': ['foo', 'bar']}} 

Load it::

    >>> factory.configure(config)

Get the thing::

    >>> factory.load()
    'abfoor'

Now lets try something better!::

    >>> config = {'': {'path': objects + ':StringMunge', 'kwargs': {'prefix': 'PRE', 'callback': '%(callback)s'}},
    ...           'callback': {'path': objects + ':stringsort'} }
    >>> factory.configure(config)
    >>> obj = factory.load()
    >>> obj('foobar')
    'PRE:abfoor'