def test_recv_message_when_first_recv_fail(self, select_function_mock): message = 'test message' select_function_mock.side_effect = [[True]] self.socket_mock.recv.side_effect = [''] with pytest.raises(IOError): received_message = Network.recv_message(self.socket_mock) self.socket_mock.recv.assert_has_calls([call(1), ])
def test_recv_message_when_select_in_loop_fail(self, select_function_mock): message = 'test message' select_function_mock.side_effect = [[True], [False]] self.socket_mock.recv.side_effect = [struct.pack('B', len(message)), ] with pytest.raises(Network.TimeoutException): received_message = Network.recv_message(self.socket_mock) self.socket_mock.recv.assert_has_calls([call(1), ])
def test_recv_message_correct_call(self, select_function_mock): message = 'test message' select_function_mock.side_effect = [[True], [True], [True], [True]] self.socket_mock.recv.side_effect = [struct.pack('B', len(message)), 'test', ' ', 'message'] received_message = Network.recv_message(self.socket_mock) self.socket_mock.recv.assert_has_calls([call(1), call(12), call(8), call(7), ]) assert message == received_message
def test_recv_message_when_first_select_fail(self, select_function_mock): message = 'test message' select_function_mock.side_effect = [[False]] with pytest.raises(Network.TimeoutException): received_message = Network.recv_message(self.socket_mock)