<p><strong>库.py</strong></p>
<pre><code>from django.core.urlresolvers import reverse
def render_reverse(f, kwargs):
"""
kwargs is a dictionary, usually of the form {'args': [cbid]}
"""
return reverse(f, **kwargs)
</code></pre>
<p><strong>测试.py</strong></p>
^{pr2}$
<p>但是,我得到了</p>
<pre><code> File "/var/lib/graphyte-webclient/graphyte-webenv/lib/python2.6/site-packages/django/core/urlresolvers.py", line 296, in reverse
"arguments '%s' not found." % (lookup_view_s, args, kwargs))
NoReverseMatch: Reverse for 'dummy_readfile' with arguments '('123',)' and keyword arguments '{}' not found.
</code></pre>
<p>为什么它调用<code>reverse</code>而不是我的<code>mock_reverse</code>(它正在查找我的网址.py!!)
您可以看到<code>calls</code>返回一个空列表。我甚至<code>assert mock_reverse.called</code>并且返回false。在</p>
<p>也许我没有提到,但是lib只是一堆函数,没有类。在</p>