我想在调用read时引发BadStatusLine
。如何使用mock完成该操作?
答案 0 :(得分:1)
我会将mock
对象分配给urllib2.open
,如下所示:
from mock import Mock
import urllib2
import httplib
mock = Mock()
mock.return_value.read.side_effect = httplib.BadStatusLine('Mocked error')
urllib2.open = mock
response = urllib2.open()
response.read()
注意:
return_value
用于访问open()
side_effect
用于在尝试执行read()