unittest inconsistent
Peter Otten
__peter__ at web.de
Wed Jan 6 04:01:42 EST 2010
André wrote:
> On Jan 5, 8:14 pm, Matt Haggard <haggar... at gmail.com> wrote:
>> Can anyone tell me why this test fails?
>>
>> http://pastebin.com/f20039b17
>>
>> This is a minimal example of a much more complex thing I'm trying to
>> do. I'm trying to hijack a function and inspect the args passed to it
>> by another function.
>>
>> The reason the 'Tester' object has no attribute 'arg1' is because
>> "self" still refers to the object made for testA.
>
> Quick answer: change faketest.py as follows:
>
> #--------------------------------------------------
> # faketest.py
> #--------------------------------------------------
>
> #from importme import render
> import importme
>
> def run(somearg):
> return importme.render(somearg)
>
> =========
> A long answer, with explanation, will cost you twice as much ;-)
> (but will have to wait)
>
> André
Or you figure it out yourself staring at
>>> import os
>>> from os import rename
>>> os.rename = 42
>>> rename
<built-in function rename>
>>> os.rename
42
from module import name
binds the object referred to by module.name to the name variable in the
current module. You can think of it as a shortcut for
import module
name = module.name
del module
When you later rebind
import module
module.name = something_else
the reference in the current module isn't magically updated to point to
something_else.
Peter
More information about the Python-list
mailing list