我试图在Python中实例化套接字时正确引发异常,但无法使其正常工作:
sock.py
import socket
def create_socket():
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
except OSError:
return 'OS Error'
test_sock.py
import mock
from sock import create_socket
@mock.patch('socket.socket', side_effect=OSError())
def test_oserror(mock_socket):
p = create_socket()
assert p == 'OS Error'
最后我得到了https://pastebin.com/N5wY59RH
我的错误在哪里
好的,我在这里发现了问题
OSError
不是字符串。它是异常类,所以您的代码应该是这样的sock.py
test_sock.py
相关问题 更多 >
编程相关推荐