view tests/test_ini.txt @ 57:cb1898f8c72a

* illustrate another pattern * note future of pyloader casting
author Jeff Hammel <jhammel@mozilla.com>
date Wed, 08 Jun 2011 23:45:11 -0700
parents f724db086125
children 6b48dee5b92b
line wrap: on
line source

Test IniFactory
===============

Let's test the .ini factory::

    >>> import os
    >>> from pyloader.factory import IniFactory
    >>> inifile = os.path.join(here, 'test.ini')
    >>> inifactory = IniFactory(inifile)

Load it up::

    >>> object = inifactory.load()
    >>> 'objects.py.StringMunge' in repr(object.__class__)
    True

Call it::

    >>> object('foobar')
    'PRE!!!abfoor'

You can also just load the callback::

    >>> callback = inifactory.load('callback')
    >>> callback('foo', 'bar')
    'abfoor'

Lets test the Fibonnaci sequence::

    >>> fib = inifactory.load('fibonacci')
    >>> fib(0) == fib(1) == 1
    True
    >>> [fib(i) for i in range(5)]
    [1, 1, 2, 3, 5]

Now let's test a simple wrapper::

    >>> fib = inifactory.load('readable-fibonacci')
    >>> from pprint import pprint
    >>> [fib(i) for i in range(5)]
    ['one', 'one', 'two', 'three', 5]