Mercurial > hg > pyloader
annotate 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 |
rev | line source |
---|---|
32
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
1 Test IniFactory |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
2 =============== |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
3 |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
4 Let's test the .ini factory:: |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
5 |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
6 >>> import os |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
7 >>> from pyloader.factory import IniFactory |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
8 >>> inifile = os.path.join(here, 'test.ini') |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
9 >>> inifactory = IniFactory(inifile) |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
10 |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
11 Load it up:: |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
12 |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
13 >>> object = inifactory.load() |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
14 >>> 'objects.py.StringMunge' in repr(object.__class__) |
b98cc94ffcfa
split IniFactory tests to their own file
Jeff Hammel <jhammel@mozilla.com>
parents:
diff
changeset
|
15 True |
33 | 16 |
17 Call it:: | |
18 | |
19 >>> object('foobar') | |
20 'PRE!!!abfoor' | |
34
a9eaf65d82c6
test loading a different section
Jeff Hammel <jhammel@mozilla.com>
parents:
33
diff
changeset
|
21 |
a9eaf65d82c6
test loading a different section
Jeff Hammel <jhammel@mozilla.com>
parents:
33
diff
changeset
|
22 You can also just load the callback:: |
a9eaf65d82c6
test loading a different section
Jeff Hammel <jhammel@mozilla.com>
parents:
33
diff
changeset
|
23 |
a9eaf65d82c6
test loading a different section
Jeff Hammel <jhammel@mozilla.com>
parents:
33
diff
changeset
|
24 >>> callback = inifactory.load('callback') |
a9eaf65d82c6
test loading a different section
Jeff Hammel <jhammel@mozilla.com>
parents:
33
diff
changeset
|
25 >>> callback('foo', 'bar') |
a9eaf65d82c6
test loading a different section
Jeff Hammel <jhammel@mozilla.com>
parents:
33
diff
changeset
|
26 'abfoor' |
38 | 27 |
28 Lets test the Fibonnaci sequence:: | |
29 | |
30 >>> fib = inifactory.load('fibonacci') | |
31 >>> fib(0) == fib(1) == 1 | |
32 True | |
33 >>> [fib(i) for i in range(5)] | |
34 [1, 1, 2, 3, 5] | |
54
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
35 |
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
36 Now let's test a simple wrapper:: |
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
37 |
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
38 >>> fib = inifactory.load('readable-fibonacci') |
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
39 >>> from pprint import pprint |
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
40 >>> [fib(i) for i in range(5)] |
f724db086125
houston, we have a pyloader
Jeff Hammel <jhammel@mozilla.com>
parents:
38
diff
changeset
|
41 ['one', 'one', 'two', 'three', 5] |